[file-roller/gnome-3-16] Fix fr_application_register_archive_manager_service memory leak



commit 659b782a42e7f0a9d978a07e79eec61659b6aa06
Author: David King <dking redhat com>
Date:   Thu Jul 16 10:36:40 2015 +0100

    Fix fr_application_register_archive_manager_service memory leak
    
    Found with Valgrind:
    
    ==17023== 48 bytes in 1 blocks are possibly lost in loss record 10,459
    of 17,938
    ==17023==    at 0x4C2BC50: malloc (in
    /usr/lib64/valgrind/vgpreload_memcheck-amd
    64-linux.so)
    ==17023==    by 0x748B689: g_malloc (gmem.c:97)
    ==17023==    by 0x74A4297: g_memdup (gstrfuncs.c:384)
    ==17023==    by 0x721820C: type_iface_vtable_base_init_Wm (gtype.c:2023)
    ==17023==    by 0x72198DE: type_class_init_Wm (gtype.c:2197)
    ==17023==    by 0x72198DE: g_type_class_ref (gtype.c:2951)
    ==17023==    by 0x7201033: g_object_new_valist (gobject.c:1959)
    ==17023==    by 0x7201193: g_object_new (gobject.c:1617)
    ==17023==    by 0x6ED6BD4: g_resource_open_stream (gresource.c:385)
    ==17023==    by 0x6ED6FA5: g_resources_open_stream (gresource.c:673)
    ==17023==    by 0x41D1B2:
    fr_application_register_archive_manager_service (fr-application.c:418)
    ==17023==    by 0x41D1B2: fr_application_startup (fr-application.c:455)
    ==17023==    by 0x71FA0C3: _g_closure_invoke_va (gclosure.c:864)
    ==17023==    by 0x72142A0: g_signal_emit_valist (gsignal.c:3246)
    ==17023==    by 0x72148F1: g_signal_emit (gsignal.c:3393)
    ==17023==    by 0x6F0EA99: g_application_register (gapplication.c:2015)
    ==17023==    by 0x6F0F545: g_application_run (gapplication.c:2285)
    ==17023==    by 0x414F95: main (main.c:38)
    
    https://bugzilla.gnome.org/show_bug.cgi?id=752476

 src/fr-application.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
---
diff --git a/src/fr-application.c b/src/fr-application.c
index 4dd53c9..c54b615 100644
--- a/src/fr-application.c
+++ b/src/fr-application.c
@@ -438,6 +438,7 @@ fr_application_register_archive_manager_service (FrApplication *self)
 
        g_timeout_add_seconds (SERVICE_TIMEOUT, service_timeout_cb, self);
 
+       _g_object_unref (stream);
        g_free (buffer);
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]