destroy the glxpixmap before the xpixmap it was made from to avoid a segfault in...
authorDana Jansens <danakj@orodu.net>
Thu, 10 Jun 2010 20:06:03 +0000 (16:06 -0400)
committerDana Jansens <danakj@orodu.net>
Sat, 26 Jun 2010 23:30:48 +0000 (01:30 +0200)
openbox/event.c

index a1fbcf6c72a0285fb545c5eb795a55cd058b74c5..5198ff720970225644e7e95f4081a20a059a0454 100644 (file)
@@ -656,14 +656,14 @@ static void event_process(const XEvent *ec, gpointer data)
         }
 
         if (pixchange) {
-            if (obwin->pixmap != None) {
-                XFreePixmap(obt_display, obwin->pixmap);
-                obwin->pixmap = None;
-            }
             if (obwin->gpixmap != None) {
                 glXDestroyGLXPixmap(obt_display, obwin->gpixmap);
                 obwin->gpixmap = None;
             }
+            if (obwin->pixmap != None) {
+                XFreePixmap(obt_display, obwin->pixmap);
+                obwin->pixmap = None;
+            }
         }
     } else if ((e->type == UnmapNotify) && obwin &&
                obwin->type != OB_WINDOW_CLASS_PROMPT &&