diff --git a/ChangeLog b/ChangeLog index 8114c913b7..c08e74bca3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-09-02 Matthias Clasen + + * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed, + we still need to deliver the destroy event. (#314980, Chris Lahey) + 2005-09-02 Alexander Larsson * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes), diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 8114c913b7..c08e74bca3 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +2005-09-02 Matthias Clasen + + * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed, + we still need to deliver the destroy event. (#314980, Chris Lahey) + 2005-09-02 Alexander Larsson * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes), diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c index bb0eecaaeb..5986a35c95 100644 --- a/gtk/gtkmain.c +++ b/gtk/gtkmain.c @@ -1256,7 +1256,7 @@ gtk_main_do_event (GdkEvent *event) * in the user_data field of GdkWindow's. * Ignore the event if we don't have a widget for it, except * for GDK_PROPERTY_NOTIFY events which are handled specialy. - * Though this happens rarely, bogus events can occour + * Though this happens rarely, bogus events can occur * for e.g. destroyed GdkWindows. */ event_widget = gtk_get_event_widget (event); @@ -2044,7 +2044,7 @@ gtk_get_event_widget (GdkEvent *event) widget = NULL; if (event && event->any.window && - !GDK_WINDOW_DESTROYED (event->any.window)) + (event->type == GDK_DESTROY || !GDK_WINDOW_DESTROYED (event->any.window))) gdk_window_get_user_data (event->any.window, (void**) &widget); return widget;