File gtk2-bnc1039465-fix-gdk-windowing-window-at-pointer.patch of Package gtk2.34885

--- gtk+-2.18.9/gdk/x11/gdkwindow-x11.c	
+++ gtk+-2.18.9/gdk/x11/gdkwindow-x11.c	
@@ -3253,16 +3253,15 @@ _gdk_windowing_window_at_pointer (GdkDis
       
       while (xwindow)
 	{
+	  child = NULL;
 	  xwindow_last = xwindow;
 	  XQueryPointer (xdisplay, xwindow,
-			 &root, &xwindow, &rootx, &rooty, &winx, &winy, &xmask);
-	  if (get_toplevel && xwindow_last != root &&
-	      (window = gdk_window_lookup_for_display (display, xwindow_last)) != NULL &&
+			 &root, &child, &rootx, &rooty, &winx, &winy, &xmask);
+	  if (get_toplevel && xwindow != root &&
+	      (window = gdk_window_lookup_for_display (display, xwindow)) != NULL &&
 	      GDK_WINDOW_TYPE (window) != GDK_WINDOW_FOREIGN)
-	    {
-	      xwindow = xwindow_last;
-	      break;
-	    }
+	    break;
+	  xwindow = child;
 	}
     } 
   else 
openSUSE Build Service is sponsored by