Module: wine Branch: master Commit: e68b27b14fa66ad61656195f5e68b03eafbbce7c URL: https://source.winehq.org/git/wine.git/?a=commit;h=e68b27b14fa66ad61656195f5...
Author: Paul Gofman pgofman@codeweavers.com Date: Tue Jun 14 11:19:56 2022 -0500
winex11.drv: Destroy GLX pbuffer when destroying drawable.
Signed-off-by: Paul Gofman pgofman@codeweavers.com
---
dlls/winex11.drv/opengl.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/dlls/winex11.drv/opengl.c b/dlls/winex11.drv/opengl.c index 468d10fbbae..8d6afba9a6f 100644 --- a/dlls/winex11.drv/opengl.c +++ b/dlls/winex11.drv/opengl.c @@ -1165,6 +1165,10 @@ static void release_gl_drawable( struct gl_drawable *gl ) pglXDestroyPixmap( gdi_display, gl->drawable ); XFreePixmap( gdi_display, gl->pixmap ); break; + case DC_GL_PBUFFER: + TRACE( "destroying pbuffer drawable %lx\n", gl->drawable ); + pglXDestroyPbuffer( gdi_display, gl->drawable ); + break; default: break; } @@ -2316,7 +2320,6 @@ static BOOL X11DRV_wglDestroyPbufferARB( struct wgl_pbuffer *object ) pthread_mutex_lock( &context_mutex ); list_remove( &object->entry ); pthread_mutex_unlock( &context_mutex ); - pglXDestroyPbuffer(gdi_display, object->gl->drawable); release_gl_drawable( object->gl ); if (object->tmp_context) pglXDestroyContext(gdi_display, object->tmp_context);