aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-09-16 13:40:12 +0000
committermarha <marha@users.sourceforge.net>2010-09-16 13:40:12 +0000
commit335d060c4d08ae070f5101a39ba6f81b8f9b1330 (patch)
tree8b56410e531401fa822943d31650d230ac27314e
parentc916660518820a074981c11f88f0c8039332c83f (diff)
downloadvcxsrv-335d060c4d08ae070f5101a39ba6f81b8f9b1330.tar.gz
vcxsrv-335d060c4d08ae070f5101a39ba6f81b8f9b1330.tar.bz2
vcxsrv-335d060c4d08ae070f5101a39ba6f81b8f9b1330.zip
Be sure not to destroy the opengl window upon unrealize
-rw-r--r--xorg-server/hw/xwin/glx/indirect.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/xorg-server/hw/xwin/glx/indirect.c b/xorg-server/hw/xwin/glx/indirect.c
index 091d8f34e..516cb6af0 100644
--- a/xorg-server/hw/xwin/glx/indirect.c
+++ b/xorg-server/hw/xwin/glx/indirect.c
@@ -890,12 +890,18 @@ glxWinUnrealizeWindow(WindowPtr pWin)
GLWIN_DEBUG_MSG("glxWinUnrealizeWindow");
- pScreen->UnrealizeWindow = screenPriv->UnrealizeWindow;
- result = pScreen->UnrealizeWindow(pWin);
- pScreen->UnrealizeWindow = glxWinUnrealizeWindow;
-
if (pWinPriv->GlCtxWnd && pWinPriv->hWnd)
+ {
ShowWindow(pWinPriv->hWnd,SW_HIDE);
+ result = TRUE;
+ }
+ else
+ {
+ pScreen->UnrealizeWindow = screenPriv->UnrealizeWindow;
+ result = pScreen->UnrealizeWindow(pWin);
+ pScreen->UnrealizeWindow = glxWinUnrealizeWindow;
+ }
+
return result;
}