[PATCH 4/4] winex11: destroy gl drawable of toplevel windows
Miklós Máté
mtmkls at gmail.com
Mon Apr 3 16:24:23 CDT 2017
Fixes https://bugs.winehq.org/show_bug.cgi?id=40767
Signed-off-by: Miklós Máté <mtmkls at gmail.com>
---
dlls/winex11.drv/opengl.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/dlls/winex11.drv/opengl.c b/dlls/winex11.drv/opengl.c
index 3df3584470..345fdc0e0f 100644
--- a/dlls/winex11.drv/opengl.c
+++ b/dlls/winex11.drv/opengl.c
@@ -1314,6 +1314,9 @@ static void free_gl_drawable( struct gl_drawable *gl )
{
switch (gl->type)
{
+ case DC_GL_WINDOW:
+ pglXDestroyWindow( gdi_display, gl->drawable );
+ break;
case DC_GL_CHILD_WIN:
pglXDestroyWindow( gdi_display, gl->drawable );
XDestroyWindow( gdi_display, gl->window );
@@ -1589,6 +1592,7 @@ void set_gl_drawable_parent( HWND hwnd, HWND parent )
switch (gl->type)
{
case DC_GL_WINDOW:
+ pglXDestroyWindow( gdi_display, gl->drawable );
break;
case DC_GL_CHILD_WIN:
if (parent != GetDesktopWindow()) goto done;
@@ -1604,6 +1608,7 @@ void set_gl_drawable_parent( HWND hwnd, HWND parent )
default:
goto done;
}
+ XSync( gdi_display, False );
data = get_win_data( hwnd );
if (!create_gl_drawable( hwnd, gl, data ))
--
2.11.0
More information about the wine-patches
mailing list