Closed Bug 335901 Opened 18 years ago Closed 17 years ago

mWindowGroup leaked in gtk2's nsWindow

Categories

(Core :: Widget: Gtk, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 398940

People

(Reporter: ajschult784, Unassigned)

Details

(Keywords: memory-leak)

Attachments

(1 file)

trace-malloc sees a few leaks starting out in gtk_window_group_new called from nsWindow::NativeCreate like
 malloc
 g_malloc
 g_mem_chunk_alloc
 g_mem_chunk_alloc0
 g_type_create_instance
 /usr/lib/libgobject-2.0.so.0+D5A1
 g_object_newv
 g_object_new_valist
 g_object_new
 gtk_window_group_new
 nsWindow::NativeCreate

AFAICT, nsWindow never destroys the GtkWindowGroup it creates (when it does create it).  mWindowGroup is set to nsnull in Destroy and there's a comment about how that will "work", but I can't see why it would help.
Attached file leak log
OK, I stepped through with the debugger and the code (as is) leaves mWindowGroup with a refcnt of 1.  I added a g_object_unref call, which takes the refcnt to 0, but the leaks remain, suggesting things are more complex than I supposed.  This is the trace-malloc leak info for the gtk_window_group_new leaks.
They're all being leaked from CreateHiddenWindow, which suggests the problem is a failure to tear down the hidden window.
I think the idea is that the window group is unrefed when the GTK widget is destroyed later in Destroy().

You could check whether DestroyHiddenWindow is getting called at all, and if it is, why the window group is getting destroyed when the hidden window's GTK widget is destroyed.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: