http://bugzilla.novell.com/show_bug.cgi?id=540421 Summary: libgpod4-0.7.2-1.7: two memory leaks Classification: openSUSE Product: openSUSE 11.2 Version: Factory Platform: All OS/Version: openSUSE 11.1 Status: NEW Severity: Normal Priority: P5 - None Component: Other AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: dcb314@hotmail.com QAContact: qa@suse.de Found By: --- I just had a look at factory package libgpod4-0.7.2-1.7 For source code file libgpod-0.7.2/src/itdb_itunesdb.c around line 410, function itdb_resolve_path is the following code gchar *good_path = g_strdup(root); guint32 i; if (!root) return NULL; I can see two problems with this. 1. root is used before being tested for sanity. 2. If the return is taken, then good_path is a memory leak. Suggest new code if (!root) return NULL; gchar *good_path = g_strdup(root); guint32 i; Also, I notice in the same file, around line 950, the following code guint32 mac_time; struct playcount *playcount = g_new0 (struct playcount, 1); glong seek = header_length + i*entry_length; check_seek (cts, seek, entry_length); CHECK_ERROR (fimp, FALSE); and #define CHECK_ERROR(imp, val) if (cts->error) { g_propagate_error (&imp->error, cts->error); return(val); } so if the return is executed, then the playcount is another memory leak. Suggest code rework to remove the memory leak. -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.