Blame SOURCES/0002-gdkwindow-Don-t-add-the-same-window-to-update_window.patch

a6b8b6
From 090159cec92921182f8eeb59762ceba11c1581f4 Mon Sep 17 00:00:00 2001
a6b8b6
From: Marek Kasik <mkasik@redhat.com>
a6b8b6
Date: Wed, 18 Dec 2013 18:28:39 +0100
a6b8b6
Subject: [PATCH 2/2] gdkwindow: Don't add the same window to "update_windows"
a6b8b6
 twice
a6b8b6
a6b8b6
This prevents passing of such window to another GMainLoop.
a6b8b6
a6b8b6
https://bugzilla.gnome.org/show_bug.cgi?id=711552
a6b8b6
---
a6b8b6
 gdk/gdkwindow.c | 9 +++++++++
a6b8b6
 1 file changed, 9 insertions(+)
a6b8b6
a6b8b6
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
a6b8b6
index 0f33fb0..153144a 100644
a6b8b6
--- a/gdk/gdkwindow.c
a6b8b6
+++ b/gdk/gdkwindow.c
a6b8b6
@@ -5242,6 +5242,15 @@ gdk_window_add_update_window (GdkWindow *window)
a6b8b6
   GSList *prev = NULL;
a6b8b6
   gboolean has_ancestor_in_list = FALSE;
a6b8b6
 
a6b8b6
+  /*  Check whether "window" is already in "update_windows" list.
a6b8b6
+   *  It could be added during execution of gtk_widget_destroy() when
a6b8b6
+   *  setting focus widget to NULL and redrawing old focus widget.
a6b8b6
+   *  See bug 711552.
a6b8b6
+   */
a6b8b6
+  tmp = g_slist_find (update_windows, window);
a6b8b6
+  if (tmp != NULL)
a6b8b6
+    return;
a6b8b6
+
a6b8b6
   for (tmp = update_windows; tmp; tmp = tmp->next)
a6b8b6
     {
a6b8b6
       GdkWindowObject *parent = GDK_WINDOW_OBJECT (window)->parent;
a6b8b6
-- 
a6b8b6
1.8.4.2
a6b8b6