From b90e4bafce1e20dc1973f2382f36d7f979fc1df3 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Wed, 9 Jun 2010 17:31:52 -0400 Subject: [PATCH] call the correct function to destroy glxpixmaps --- openbox/composite.c | 3 +++ openbox/event.c | 7 ++++--- openbox/window.c | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/openbox/composite.c b/openbox/composite.c index db355346..7675a42c 100644 --- a/openbox/composite.c +++ b/openbox/composite.c @@ -303,6 +303,9 @@ static gboolean composite(gpointer data) else attribs[1] = GLX_TEXTURE_FORMAT_RGB_EXT; + if (win->pixmap == None) + win->pixmap = XCompositeNameWindowPixmap(obt_display, window_top(win)); + if (win->gpixmap == None) win->gpixmap = obcomp.CreatePixmap(obt_display, obcomp.PixmapConfig[win->depth], win->pixmap, attribs); diff --git a/openbox/event.c b/openbox/event.c index 3fba27f6..871d0e84 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -624,11 +624,12 @@ static void event_process(const XEvent *ec, gpointer data) #ifdef USE_COMPOSITING else if ((e->type == ConfigureNotify || e->type == MapNotify) && obwin && obwin->type != OB_WINDOW_CLASS_PROMPT) { - if (obwin->pixmap != None) + if (obwin->pixmap != None) { XFreePixmap(obt_display, obwin->pixmap); - obwin->pixmap = XCompositeNameWindowPixmap(obt_display, window_top(obwin)); + obwin->pixmap = None; + } if (obwin->gpixmap != None) { - XFreePixmap(obt_display, obwin->gpixmap); + glXDestroyGLXPixmap(obt_display, obwin->gpixmap); obwin->gpixmap = None; } diff --git a/openbox/window.c b/openbox/window.c index f28bd43e..bb5ed08e 100644 --- a/openbox/window.c +++ b/openbox/window.c @@ -129,7 +129,7 @@ void window_remove(Window xwin) if (win->damage) XDamageDestroy(obt_display, win->damage); if (win->gpixmap) - XFreePixmap(obt_display, win->gpixmap); + glXDestroyGLXPixmap(obt_display, win->gpixmap); if (win->pixmap) XFreePixmap(obt_display, win->pixmap); if (win->texture) -- 2.34.1