Closed Bug 144212 Opened 22 years ago Closed 21 years ago

[Patch] Crashes when destroying gtk2 mozembed

Categories

(Core Graveyard :: Embedding: GTK Widget, defect)

x86
Linux
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mpgritti, Assigned: blizzard)

References

Details

(Keywords: crash)

Attachments

(2 files)

(This is with not still committed gtk2 gtkmozembed blizzard patches)

To reproduce I modified gtkmozembed to destroy the mozembed widget but not the
toplevel window on quit menu. I can provide a patch if needed.

galeon-bin:21220): Gtk-CRITICAL **: file gtkwidget.c: line 5033
(gtk_widget_get_toplevel): assertion `GTK_IS_WIDGET (widget)' failed

(galeon-bin:21220): GLib-GObject-WARNING **: invalid uninstantiatable
type `(null)' in cast to `GtkObject'

(galeon-bin:21220): Gtk-CRITICAL **: file gtkwidget.c: line 2972
(gtk_widget_send_expose): assertion `GTK_IS_WIDGET (widget)' failed


Stack trace:


#6  0x406db08d in gtk_widget_get_toplevel (widget=0x8296d30) at
gtkwidget.c:5033
#7  0x4060fb77 in gtk_main_get_window_group (widget=0x8296d30) at
gtkmain.c:1404
#8  0x4060f760 in gtk_main_do_event (event=0xbffff8b0) at gtkmain.c:1229
#9  0x4078e162 in gdk_window_process_updates_internal (window=0x8269b50)
at gdkwindow.c:2103
#10 0x4078e216 in gdk_window_process_all_updates () at gdkwindow.c:2138
#11 0x405bca41 in gtk_container_idle_sizer (data=0x0) at
gtkcontainer.c:1004
#12 0x4093add0 in g_idle_dispatch (source=0x83472b8, callback=0x405bc9a8
<gtk_container_idle_sizer>, user_data=0x0) at gmain.c:3129
#13 0x4093879e in g_main_dispatch (context=0x80d1fc8) at gmain.c:1617
#14 0x409395b5 in g_main_context_dispatch (context=0x80d1fc8) at
gmain.c:2161
#15 0x40939948 in g_main_context_iterate (context=0x80d1fc8, block=1,
dispatch=1, self=0x80c6e98) at gmain.c:2242
#16 0x40939fee in g_main_loop_run (loop=0x8109028) at gmain.c:2462
#17 0x402fff02 in bonobo_main () at bonobo-main.c:290
The patch unset the NO_WINDOW flags so that widget->window is destroyed on
unrealize.

Without it the gdkwindow was not destroyed and it was getting an expose event
when
the widget was already destroyed.
Blocks: gtk2
Is there a decent test case for this?
Severity: major → critical
Keywords: crash
To reproduce run TestGtkEmbed and click File->Close.
The testcase will show the warnings but will not crash.
I'm able to crash it only when removing more than one tab (2-3 normally) in
galeon.
marking new for patch loving.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: patch
Depends on: 121253
Should be fixed with the checkin of bug 121253.
Should this bug mark duplicate of bug 121253 ?

I'm no longer seeing the crash with mozilla 1.3beta..
No, I think this is different.
I think this is really fixed by 121253.
The patch I attached here is included in that patch.
http://bugzilla.mozilla.org/attachment.cgi?id=106446&action=view
Ahh, yes.  This part was already checked in a while ago.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: