glx: fix glXQueryContext(GLX_RENDER_TYPE)
authorBrian Paul <brianp@vmware.com>
Tue, 29 Sep 2009 16:24:27 +0000 (10:24 -0600)
committerBrian Paul <brianp@vmware.com>
Wed, 30 Sep 2009 21:15:10 +0000 (15:15 -0600)
The renderType parameter to CreateContext() was never used.  Also, it
was often passed as zero.  Now when it's zero we check if the context
is RGBA or CI mode and set it accordingly.

Fixes bug 24211.

src/glx/x11/glxcmds.c

index af3e559f999fa316e26ae51975ea6097d8a81723..cd4aede74e4ecddd2ac1d3f345beef6dbd56c6a1 100644 (file)
@@ -398,6 +398,10 @@ CreateContext(Display * dpy, XVisualInfo * vis,
                _XError(dpy, &error);
                return None;
             }
+            if (renderType == 0) {
+               /* Initialize renderType now */
+               renderType = mode->rgbMode ? GLX_RGBA_TYPE : GLX_COLOR_INDEX_TYPE;
+            }
          }
          else {
             mode = fbconfig;
@@ -484,6 +488,8 @@ CreateContext(Display * dpy, XVisualInfo * vis,
       gc->imported = GL_TRUE;
    }
 
+   gc->renderType = renderType;
+
    return gc;
 }