aco: fix non-rtz pack_half_2x16
[mesa.git] / src / glx / glxcmds.c
index 85041ad5c510fd2ba9e4b5e2298507720dcf25c6..8766b007d739d2b63cb8b5cf8fb48cc911bc9b46 100644 (file)
@@ -238,7 +238,7 @@ validate_renderType_against_config(const struct glx_config *config,
 {
    /* GLX_EXT_no_config_context supports any render type */
    if (!config)
-      return renderType == GLX_DONT_CARE;
+      return True;
 
    switch (renderType) {
       case GLX_RGBA_TYPE:
@@ -269,9 +269,6 @@ glx_context_init(struct glx_context *gc,
    gc->isDirect = GL_TRUE;
    gc->currentContextTag = -1;
 
-   if (!config)
-      gc->renderType = GLX_DONT_CARE;
-
    return True;
 }
 
@@ -1734,7 +1731,9 @@ __glXSwapIntervalSGI(int interval)
 {
    xGLXVendorPrivateReq *req;
    struct glx_context *gc = __glXGetCurrentContext();
+#ifdef GLX_DIRECT_RENDERING
    struct glx_screen *psc;
+#endif
    Display *dpy;
    CARD32 *interval_ptr;
    CARD8 opcode;
@@ -1747,9 +1746,9 @@ __glXSwapIntervalSGI(int interval)
       return GLX_BAD_VALUE;
    }
 
+#ifdef GLX_DIRECT_RENDERING
    psc = GetGLXScreenConfigs( gc->currentDpy, gc->screen);
 
-#ifdef GLX_DIRECT_RENDERING
    if (gc->isDirect && psc && psc->driScreen &&
           psc->driScreen->setSwapInterval) {
       __GLXDRIdrawable *pdraw =
@@ -1849,32 +1848,26 @@ __glXGetSwapIntervalMESA(void)
 static int
 __glXGetVideoSyncSGI(unsigned int *count)
 {
+#ifdef GLX_DIRECT_RENDERING
    int64_t ust, msc, sbc;
    int ret;
    struct glx_context *gc = __glXGetCurrentContext();
    struct glx_screen *psc;
-#ifdef GLX_DIRECT_RENDERING
    __GLXDRIdrawable *pdraw;
-#endif
 
    if (gc == &dummyContext)
       return GLX_BAD_CONTEXT;
 
-#ifdef GLX_DIRECT_RENDERING
    if (!gc->isDirect)
       return GLX_BAD_CONTEXT;
-#endif
 
    psc = GetGLXScreenConfigs(gc->currentDpy, gc->screen);
-#ifdef GLX_DIRECT_RENDERING
    pdraw = GetGLXDRIDrawable(gc->currentDpy, gc->currentDrawable);
-#endif
 
    /* FIXME: Looking at the GLX_SGI_video_sync spec in the extension registry,
     * FIXME: there should be a GLX encoding for this call.  I can find no
     * FIXME: documentation for the GLX encoding.
     */
-#ifdef GLX_DIRECT_RENDERING
    if (psc && psc->driScreen && psc->driScreen->getDrawableMSC) {
       ret = psc->driScreen->getDrawableMSC(psc, pdraw, &ust, &msc, &sbc);
       *count = (unsigned) msc;
@@ -1889,12 +1882,12 @@ static int
 __glXWaitVideoSyncSGI(int divisor, int remainder, unsigned int *count)
 {
    struct glx_context *gc = __glXGetCurrentContext();
-   struct glx_screen *psc;
 #ifdef GLX_DIRECT_RENDERING
+   struct glx_screen *psc;
    __GLXDRIdrawable *pdraw;
-#endif
    int64_t ust, msc, sbc;
    int ret;
+#endif
 
    if (divisor <= 0 || remainder < 0)
       return GLX_BAD_VALUE;
@@ -1905,14 +1898,10 @@ __glXWaitVideoSyncSGI(int divisor, int remainder, unsigned int *count)
 #ifdef GLX_DIRECT_RENDERING
    if (!gc->isDirect)
       return GLX_BAD_CONTEXT;
-#endif
 
    psc = GetGLXScreenConfigs( gc->currentDpy, gc->screen);
-#ifdef GLX_DIRECT_RENDERING
    pdraw = GetGLXDRIDrawable(gc->currentDpy, gc->currentDrawable);
-#endif
 
-#ifdef GLX_DIRECT_RENDERING
    if (psc && psc->driScreen && psc->driScreen->waitForMSC) {
       ret = psc->driScreen->waitForMSC(pdraw, 0, divisor, remainder, &ust, &msc,
                                       &sbc);
@@ -2051,11 +2040,11 @@ __glXGetSyncValuesOML(Display * dpy, GLXDrawable drawable,
                       int64_t * ust, int64_t * msc, int64_t * sbc)
 {
    struct glx_display * const priv = __glXInitialize(dpy);
-   int ret;
 #ifdef GLX_DIRECT_RENDERING
+   int ret;
    __GLXDRIdrawable *pdraw;
-#endif
    struct glx_screen *psc;
+#endif
 
    if (!priv)
       return False;