iface-modem-firmware: plug memleak when listing images
==80079== 1,377 (48 direct, 1,329 indirect) bytes in 1 blocks are definitely lost in loss record 5,200 of 5,232 ==80079== at 0x483977F: malloc (vg_replace_malloc.c:309) ==80079== by 0x5025AE9: g_malloc (in /usr/lib/libglib-2.0.so.0.6400.2) ==80079== by 0x5006223: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.6400.2) ==80079== by 0x4FEB59B: ??? (in /usr/lib/libglib-2.0.so.0.6400.2) ==80079== by 0x4FEE378: g_variant_builder_end (in /usr/lib/libglib-2.0.so.0.6400.2) ==80079== by 0x48F8314: mm_firmware_properties_get_dictionary (mm-firmware-properties.c:337) ==80079== by 0x1AAF29: load_current_ready (mm-iface-modem-firmware.c:80) ==80079== by 0x4E68653: ??? (in /usr/lib/libgio-2.0.so.0.6400.2) ==80079== by 0x4E68688: ??? (in /usr/lib/libgio-2.0.so.0.6400.2) ==80079== by 0x502B58E: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.6400.2) ==80079== by 0x502D530: ??? (in /usr/lib/libglib-2.0.so.0.6400.2) ==80079== by 0x502E542: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.6400.2)
This commit is contained in:
@@ -76,10 +76,13 @@ load_current_ready (MMIfaceModemFirmware *self,
|
||||
|
||||
/* Build array of dicts */
|
||||
g_variant_builder_init (&builder, G_VARIANT_TYPE ("aa{sv}"));
|
||||
for (l = ctx->list; l; l = g_list_next (l))
|
||||
g_variant_builder_add_value (
|
||||
&builder,
|
||||
mm_firmware_properties_get_dictionary (MM_FIRMWARE_PROPERTIES (l->data)));
|
||||
for (l = ctx->list; l; l = g_list_next (l)) {
|
||||
GVariant *dict;
|
||||
|
||||
dict = mm_firmware_properties_get_dictionary (MM_FIRMWARE_PROPERTIES (l->data));
|
||||
g_variant_builder_add_value (&builder, dict);
|
||||
g_variant_unref (dict);
|
||||
}
|
||||
|
||||
mm_gdbus_modem_firmware_complete_list (
|
||||
ctx->skeleton,
|
||||
|
Reference in New Issue
Block a user