[gtk+/client-side-windows] Handle the window being destroyed in do_synthesize_crossing_event
- From: Alexander Larsson <alexl src gnome org>
- To: svn-commits-list gnome org
- Subject: [gtk+/client-side-windows] Handle the window being destroyed in do_synthesize_crossing_event
- Date: Thu, 11 Jun 2009 16:12:37 -0400 (EDT)
commit 5dc6709ea00daabdfe4f3f89aeea958db78f1eca
Author: Alexander Larsson <alexl redhat com>
Date: Thu Jun 11 21:56:02 2009 +0200
Handle the window being destroyed in do_synthesize_crossing_event
This can happen since we ref the window and do the function in an idle.
gdk/gdkwindow.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
index 7c50112..b843b08 100644
--- a/gdk/gdkwindow.c
+++ b/gdk/gdkwindow.c
@@ -8703,11 +8703,14 @@ do_synthesize_crossing_event (gpointer data)
changed_toplevel = data;
changed_toplevel_priv = (GdkWindowObject *)changed_toplevel;
+ changed_toplevel_priv->synthesize_crossing_event_queued = FALSE;
+
+ if (GDK_WINDOW_DESTROYED (changed_toplevel))
+ return;
+
display = gdk_drawable_get_display (changed_toplevel);
serial = _gdk_windowing_window_get_next_serial (display);
- changed_toplevel_priv->synthesize_crossing_event_queued = FALSE;
-
if (changed_toplevel == display->pointer_info.toplevel_under_pointer)
{
new_window_under_pointer =
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]