]> git.decadent.org.uk Git - ion3.git/blobdiff - ioncore/rootwin.c
Merge commit '20081002' into HEAD
[ion3.git] / ioncore / rootwin.c
index 1468302c56bf7aea60521c6ce6442ab25fe251d3..fd2d2584d054fc68aa0e4b88915599d4488372ed 100644 (file)
@@ -59,9 +59,13 @@ static int my_error_handler(Display *dpy, XErrorEvent *ev)
     
     /* Just ignore bad window and similar errors; makes the rest of
      * the code simpler.
+     * 
+     * Apparently XGetWindowProperty can return BadMatch on a race
+     * condition where the server is already reusing the XID for a 
+     * non-window drawable, so let's just ignore BadMatch entirely...
      */
     if((ev->error_code==BadWindow ||
-        (ev->error_code==BadMatch && ev->request_code==X_SetInputFocus) ||
+        (ev->error_code==BadMatch /*&& ev->request_code==X_SetInputFocus*/) ||
         (ev->error_code==BadDrawable && ev->request_code==X_GetGeometry)) &&
        ignore_badwindow)
         return 0;