[Patch] Crashes when destroying gtk2 mozembed

RESOLVED FIXED

Status

--
critical
RESOLVED FIXED
17 years ago
7 years ago

People

(Reporter: mpgritti, Assigned: blizzard)

Tracking

({crash})

Trunk
x86
Linux
crash
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Reporter)

Description

17 years ago
(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
(Reporter)

Comment 1

17 years ago
Created attachment 83369 [details] [diff] [review]
One line patch that fix the crashes, it needs blizzard gtk2 patches applied before

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.
(Reporter)

Updated

17 years ago
Blocks: 92033
(Assignee)

Comment 2

17 years ago
Is there a decent test case for this?

Updated

17 years ago
Severity: major → critical
Keywords: crash
(Reporter)

Comment 3

17 years ago
Created attachment 83405 [details] [diff] [review]
Testcase as a TestGtkEmbed patch

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.

Comment 4

17 years ago
marking new for patch loving.
Status: UNCONFIRMED → NEW
Ever confirmed: true

Updated

17 years ago
Keywords: patch
(Assignee)

Updated

16 years ago
Depends on: 121253
(Assignee)

Comment 5

16 years ago
Should be fixed with the checkin of bug 121253.

Comment 6

16 years ago
Should this bug mark duplicate of bug 121253 ?

I'm no longer seeing the crash with mozilla 1.3beta..
(Assignee)

Comment 7

16 years ago
No, I think this is different.
(Reporter)

Comment 8

16 years ago
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
(Assignee)

Comment 9

16 years ago
Ahh, yes.  This part was already checked in a while ago.
Status: NEW → RESOLVED
Last Resolved: 16 years ago
Resolution: --- → FIXED
Component: Embedding: GTK Widget → Embedding: GTK Widget
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.