[hafqa] [hafqa] [Bug 1065] New: hildon_window_destroy leaks the GList used to detach menus

From: bugzilla-daemon at maemo.org bugzilla-daemon at maemo.org
Date: Thu Feb 15 12:30:41 EET 2007
https://maemo.org/bugzilla/show_bug.cgi?id=1065

           Summary: hildon_window_destroy leaks the GList used to detach
                    menus
           Product: haf
           Version: sardine
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: hildon-libs
        AssignedTo: michael.kostrzewa at nokia.com
        ReportedBy: jdapena at igalia.com
         QAContact: hafqa at maemo.org


I've got this leak in Hildon Application Manager:

==21875== 12 bytes in 1 blocks are definitely lost in loss record 7 of 108
==21875==    at 0x401C4A6: malloc (vg_replace_malloc.c:149)
==21875==    by 0x463BA3C: g_malloc (in
/targets/SARDINE_PC/usr/lib/libglib-2.0.so.0.1200.4)
==21875==    by 0x464B12B: g_slice_alloc (in
/targets/SARDINE_PC/usr/lib/libglib-2.0.so.0.1200.4)
==21875==    by 0x4631BD1: g_list_copy (in
/targets/SARDINE_PC/usr/lib/libglib-2.0.so.0.1200.4)
==21875==    by 0x406D101: hildon_window_destroy (hildon-window.c:737)
==21875==    by 0x45ED607: g_cclosure_marshal_VOID__VOID (in
/targets/SARDINE_PC/usr/lib/libgobject-2.0.so.0.1200.4)

It seems the problem is in hildon_window_destroy:
    menu_list = g_list_copy (gtk_menu_get_for_attach_widget (GTK_WIDGET (obj)));

    while (menu_list)
    {
        if (GTK_IS_MENU(menu_list->data))
        {
            if (GTK_WIDGET_VISIBLE (GTK_WIDGET (menu_list->data)))
            {
                gtk_menu_popdown (GTK_MENU (menu_list->data));
                gtk_menu_shell_deactivate (GTK_MENU_SHELL (menu_list->data));
            }
            gtk_menu_detach (GTK_MENU (menu_list->data));
        }
        menu_list = menu_list->next;
    }

    g_list_free (menu_list);

The g_list_free is always getting a NULL value, as menu_list is used to iterate
over the list.

-- 
Configure bugmail: https://maemo.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.

More information about the hafqa mailing list