Skip to content

Call ThunarStatusbar's parent finalizer to prevent leaks

correctmost requested to merge correctmost/thunar:cm/fix-statusbar-leak into master

Example leak report

Indirect leak of 13 byte(s) in 1 object(s) allocated from:
    #0 0x5e7816a147f9 in malloc (/usr/asan/bin/thunar+0x4987f9) (BuildId: de5a685fd75399b9)
    #1 0x7cefd0345e4a in g_malloc /usr/src/debug/glib2/build/../glib/glib/gmem.c:100:13
    #2 0x7cefd035c25a in g_strdup /usr/src/debug/glib2/build/../glib/glib/gstrfuncs.c:323:17
    #3 0x7cefd140bcd8 in g_strdup_inline /usr/include/glib-2.0/glib/gstrfuncs.h:321:10
    #4 0x7cefd140bcd8 in gtk_widget_buildable_set_name gtk/builddir/../gtk/gtkwidget.c:14060:28
    #5 0x7cefd0e4fea6 in object_set_name gtk/builddir/../gtk/gtkbuilder.c:610:5
    #6 0x7cefd0e4fea6 in gtk_builder_expose_object gtk/builddir/../gtk/gtkbuilder.c:1594:3
    #7 0x7cefd0e4fb80 in gtk_builder_extend_with_template gtk/builddir/../gtk/gtkbuilder.c:1193:3
    #8 0x7cefd1401d0a in gtk_widget_init_template gtk/builddir/../gtk/gtkwidget.c:17031:8
    #9 0x7cefd17c180a in g_type_create_instance /usr/src/debug/glib2/build/../glib/gobject/gtype.c:1945:4
    #10 0x7cefd17a6684 in g_object_new_internal /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2606:24
    #11 0x7cefd17a7cfe in g_object_new_internal /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2603:6
    #12 0x7cefd17a7cfe in g_object_new_with_properties /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2769:14
    #13 0x7cefd17a8d51 in g_object_new /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2415:12
    #14 0x5e7816d9b36e in thunar_statusbar_new thunar/thunar/thunar-statusbar.c:387:10
    #15 0x5e7816e605ec in thunar_window_init thunar/thunar/thunar-window.c:1123:23
    #16 0x7cefd17c1848 in g_type_create_instance /usr/src/debug/glib2/build/../glib/gobject/gtype.c:1951:5
    #17 0x7cefd17a6684 in g_object_new_internal /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2606:24
    #18 0x7cefd17a897a in g_object_new_internal /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2923:29
    #19 0x7cefd17a897a in g_object_new_valist /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2945:16
    #20 0x7cefd17a8d2f in g_object_new /usr/src/debug/glib2/build/../glib/gobject/gobject.c:2418:12
    #21 0x5e7816adb7bb in thunar_application_open_window thunar/thunar/thunar-application.c:1477:12
    #22 0x5e7816af4a1d in thunar_application_process_files_finish thunar/thunar/thunar-application.c:1694:11
    #23 0x5e7816af73d0 in thunar_browser_poke_file_internal thunar/thunar/thunar-browser.c:498:9
    #24 0x5e7816af668b in thunar_browser_poke_file thunar/thunar/thunar-browser.c:537:3
    #25 0x5e7816aded7a in thunar_application_process_files thunar/thunar/thunar-application.c:1766:3
    #26 0x5e7816ade7cf in thunar_application_process_filenames thunar/thunar/thunar-application.c:1872:7
    #27 0x5e7816aef16f in thunar_application_command_line thunar/thunar/thunar-application.c:550:8
    #28 0x7cefd04a2373 in _g_cclosure_marshal_INT__OBJECTv /usr/src/debug/glib2/build/../glib/gio/gmarshal-internal.c:847:14
    #29 0x7cefd17b5b61 in _g_closure_invoke_va /usr/src/debug/glib2/build/../glib/gobject/gclosure.c:897:7
    #30 0x7cefd17b5b61 in signal_emit_valist_unlocked /usr/src/debug/glib2/build/../glib/gobject/gsignal.c:3424:8
    #31 0x7cefd17b5c71 in g_signal_emit_valist /usr/src/debug/glib2/build/../glib/gobject/gsignal.c:3263:7
    #32 0x7cefd17b5d33 in g_signal_emit /usr/src/debug/glib2/build/../glib/gobject/gsignal.c:3583:3

Testing

  • No issues were detected with LSan, ASan, or Valgrind when testing the patch

Merge request reports