diff options
author | marha <marha@users.sourceforge.net> | 2012-01-23 12:01:51 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-01-23 12:01:51 +0100 |
commit | 2c28371774f845e604217022b14c9918f1518103 (patch) | |
tree | 5377a3a8c0c1fc0e4329d37a2c5d0672757bab95 | |
parent | 6b7b7d9ce2264b35d19ecec6bf1f28894dbcada7 (diff) | |
download | vcxsrv-2c28371774f845e604217022b14c9918f1518103.tar.gz vcxsrv-2c28371774f845e604217022b14c9918f1518103.tar.bz2 vcxsrv-2c28371774f845e604217022b14c9918f1518103.zip |
Solved possible crash when closing opengl client
-rw-r--r-- | xorg-server/glx/glxext.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/xorg-server/glx/glxext.c b/xorg-server/glx/glxext.c index d23d10059..42cb274f0 100644 --- a/xorg-server/glx/glxext.c +++ b/xorg-server/glx/glxext.c @@ -48,6 +48,7 @@ #include "glxext.h" #include "indirect_table.h" #include "indirect_util.h" +#include "glapi.h" extern void FlushContext(__GLXcontext *cx); @@ -138,7 +139,7 @@ static Bool DrawableGone(__GLXdrawable *glxPriv, XID xid) for (c = glxAllContexts; c; c = next) { next = c->next; if (c->isCurrent && (c->drawPriv == glxPriv || c->readPriv == glxPriv)) { - FlushContext(c); + if (GET_DISPATCH()) FlushContext(c); /* Only flush if we still have a context */ (*c->loseCurrent)(c); c->isCurrent = GL_FALSE; |