Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
SUSE:SLE-12-SP1:GA
libplist.4095
A0007-Fix-memory-leaking-caused-by-unused-nodes...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File A0007-Fix-memory-leaking-caused-by-unused-nodes-in-plist_from_bin.patch of Package libplist.4095
From 6a38f51266829feb975cdd8daed6656842e5ecd9 Mon Sep 17 00:00:00 2001 From: Nikias Bassen <nikias@gmx.li> Date: Sun, 18 May 2014 02:39:13 +0200 Subject: [PATCH] bplist: Fix memory leaking caused by unused nodes in plist_from_bin() --- src/bplist.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/bplist.c b/src/bplist.c index 523d0fe..d1694b9 100644 --- a/src/bplist.c +++ b/src/bplist.c @@ -715,6 +715,15 @@ void plist_from_bin(const char *plist_bin, uint32_t length, plist_t * plist) } *plist = nodeslist[root_object]; + + // free unreferenced nodes that would otherwise leak memory + for (i = 0; i < num_objects; i++) { + if (i == root_object) continue; + node_t* node = (node_t*)nodeslist[i]; + if (NODE_IS_ROOT(node)) { + plist_free(node); + } + } free(nodeslist); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor