glx: Correctly look up the dri2 context pointer for SetTexBuffer.
authorEric Anholt <eric@anholt.net>
Fri, 23 Jul 2010 21:51:06 +0000 (14:51 -0700)
committerEric Anholt <eric@anholt.net>
Sat, 24 Jul 2010 03:58:12 +0000 (20:58 -0700)
gc->driContext points at the second member of the dri2 context.  The
dri2 context is just a subclass of the GLX context.

Fixes piglit tfp testcase.

src/glx/dri2_glx.c

index a94223b2a12bb338505b24b601a82b570477c7ac..1dae589bd8e5d573d6635361de47c1d54ea31120 100644 (file)
@@ -647,13 +647,13 @@ dri2_bind_tex_image(Display * dpy,
                    int buffer, const int *attrib_list)
 {
    GLXContext gc = __glXGetCurrentContext();
+   struct dri2_context *pcp = (struct dri2_context *) gc;
    __GLXDRIdrawable *base = GetGLXDRIDrawable(dpy, drawable);
    __GLXdisplayPrivate *dpyPriv = __glXInitialize(dpy);
    struct dri2_drawable *pdraw = (struct dri2_drawable *) base;
    struct dri2_display *pdp =
       (struct dri2_display *) dpyPriv->dri2Display;
    struct dri2_screen *psc = (struct dri2_screen *) base->psc;
-   struct dri2_context *pcp = (struct dri2_context *) gc->driContext;
 
    if (pdraw != NULL) {