ostree/dump: Fix a memory leak
Re-using the `refs` variable for the main list of refs, plus the iterated lists, meant that the main list was never freed (although all the iterated ones were freed correctly). Fix this by using two variables rather than reusing the one. Signed-off-by: Philip Withnall <withnall@endlessm.com>
This commit is contained in:
parent
8d09a1a8ea
commit
23bdc4e5df
|
|
@ -322,10 +322,11 @@ ot_dump_summary_bytes (GBytes *summary_bytes,
|
|||
collection_map = g_variant_lookup_value (exts, OSTREE_SUMMARY_COLLECTION_MAP, G_VARIANT_TYPE ("a{sa(s(taya{sv}))}"));
|
||||
if (collection_map != NULL)
|
||||
{
|
||||
g_autoptr(GVariant) collection_refs = NULL;
|
||||
g_variant_iter_init (&iter, collection_map);
|
||||
|
||||
while (g_variant_iter_loop (&iter, "{&s@a(s(taya{sv}))}", &collection_id, &refs))
|
||||
dump_summary_refs (collection_id, refs);
|
||||
while (g_variant_iter_loop (&iter, "{&s@a(s(taya{sv}))}", &collection_id, &collection_refs))
|
||||
dump_summary_refs (collection_id, collection_refs);
|
||||
}
|
||||
|
||||
/* Print out the additional metadata. */
|
||||
|
|
|
|||
Loading…
Reference in New Issue