From: Ian Romanick Date: Mon, 16 Oct 2006 17:50:19 +0000 (+0000) Subject: Fix bug #8563. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6ae157f9e776400b2cca0552e9028857e0a23f7d;p=mesa.git 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. --- diff --git a/src/glx/x11/glxext.c b/src/glx/x11/glxext.c index 057e799f677..d3864363965 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); }