summaryrefslogtreecommitdiff
path: root/src/glx/x11/glxcurrent.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-06-11 10:50:32 +1000
committerDave Airlie <airlied@redhat.com>2009-06-17 13:59:28 +1000
commit77506dac8e81e9548a7e9680ce367175fe5747af (patch)
treed13f6d52cb68c3743afc9d40bb98506af0c9cd08 /src/glx/x11/glxcurrent.c
parent856221d6995a7754cde60748d7c229b5278f043e (diff)
GLX: attempt to fix glean makeCurrent test cases.
Two parts to this: One we don't keep pointers to possibly freed memory anymore once we unbind the drawables from the context. Brian I need to figure out what the comment you made there, can we get a glean/piglit test so we can fix it properly? If the new gc is the same as the oldGC, we call the unbind even though we just bound it in that function. doh.
Diffstat (limited to 'src/glx/x11/glxcurrent.c')
-rw-r--r--src/glx/x11/glxcurrent.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glx/x11/glxcurrent.c b/src/glx/x11/glxcurrent.c
index 01f4233241..d44e0dd1fc 100644
--- a/src/glx/x11/glxcurrent.c
+++ b/src/glx/x11/glxcurrent.c
@@ -457,7 +457,7 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
&dummy_reply);
}
#ifdef GLX_DIRECT_RENDERING
- else if (oldGC->driContext) {
+ else if (oldGC->driContext && oldGC != gc) {
oldGC->driContext->unbindContext(oldGC->driContext);
}
#endif