[965] Fix ARB_occlusion_query from intel_screen.c merge.
authorEric Anholt <eric@anholt.net>
Thu, 14 Feb 2008 00:08:19 +0000 (16:08 -0800)
committerEric Anholt <eric@anholt.net>
Thu, 14 Feb 2008 00:08:35 +0000 (16:08 -0800)
It wasn't being initialized at screen setup, so we were getting stub
entrypoints even though it was exposed as enabled.  Fixes arbocclude mesa demo.

src/mesa/drivers/dri/i965/intel_context.c
src/mesa/drivers/dri/intel/intel_screen.c

index 83a00303df9f9829d28c108144a6506c3ecc3544..459039a88793ec222c5f1fd10c47615896f6bee9 100644 (file)
@@ -227,8 +227,10 @@ const struct dri_extension ttm_extensions[] = {
    {NULL, NULL}
 };
 
-const struct dri_extension arb_oc_extension = 
-    { "GL_ARB_occlusion_query",            GL_ARB_occlusion_query_functions};
+const struct dri_extension arb_oc_extensions[] = {
+   {"GL_ARB_occlusion_query",            GL_ARB_occlusion_query_functions},
+   {NULL, NULL}
+};
 
 /**
  * Initializes potential list of extensions if ctx == NULL, or actually enables
@@ -248,7 +250,7 @@ void intelInitExtensions(GLcontext *ctx, GLboolean enable_imaging)
       driInitExtensions(ctx, ttm_extensions, GL_FALSE);
 
    if (intel == NULL || intel->intelScreen->drmMinor >= 8)
-      driInitSingleExtension(ctx, &arb_oc_extension);
+      driInitExtensions(ctx, arb_oc_extensions, GL_FALSE);
 }
 
 static const struct dri_debug_control debug_control[] =
index 247fc4c5bc9955446f1d7d995ee2742b79989981..84c77d399199f651e9b3b281989248c295089592 100644 (file)
@@ -68,11 +68,14 @@ DRI_CONF_END;
 const GLuint __driNConfigOptions = 5;
 
 #ifdef USE_NEW_INTERFACE
-     static PFNGLXCREATECONTEXTMODES create_context_modes = NULL;
+static PFNGLXCREATECONTEXTMODES create_context_modes = NULL;
 #endif /*USE_NEW_INTERFACE */
 
-     extern const struct dri_extension card_extensions[];
-     extern const struct dri_extension ttm_extensions[];
+extern const struct dri_extension card_extensions[];
+extern const struct dri_extension ttm_extensions[];
+#ifndef I915
+extern const struct dri_extension arb_oc_extensions[];
+#endif
 
 /**
  * Map all the memory regions described by the screen.
@@ -693,6 +696,9 @@ PUBLIC __GLcontextModes *__driDriverInitScreen(__DRIscreenPrivate *psp)
     */
    driInitExtensions(NULL, card_extensions, GL_FALSE);
    driInitExtensions(NULL, ttm_extensions, GL_FALSE);
+#ifndef I915
+   driInitExtensions(NULL, arb_oc_extensions, GL_FALSE);
+#endif
 
    if (!intelInitDriver(psp))
        return NULL;