summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Romanick <idr@us.ibm.com>2006-10-16 17:50:19 +0000
committerIan Romanick <idr@us.ibm.com>2006-10-16 17:50:19 +0000
commit6ae157f9e776400b2cca0552e9028857e0a23f7d (patch)
treea6af694f547dc59c2c5af120828438502a8d233f
parent041d64812e4fa7a0444aa35c59d14ce85240b5de (diff)
Fix bug #8563.
Fixes a GLX protocol problem when binding an indirect rendering context after a direct rendering context. In this case, the oldContetTag sent to the server should be None, but the currectContextTag stored in the direct rendering context (i.e., -1) was sent instead.
-rw-r--r--src/glx/x11/glxext.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c
index 057e799f67..d386436396 100644
--- a/src/glx/x11/glxext.c
+++ b/src/glx/x11/glxext.c
@@ -1612,7 +1612,7 @@ USED static Bool MakeContextCurrent(Display *dpy, GLXDrawable draw,
/* Send a glXMakeCurrent request to bind the new context. */
bindReturnValue =
SendMakeCurrentRequest(dpy, opcode, gc ? gc->xid : None,
- (dpy != oldGC->currentDpy)
+ ((dpy != oldGC->currentDpy) || oldGC->isDirect)
? None : oldGC->currentContextTag,
draw, read, &reply);
}