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