On 09/01/2012 10:15 AM, Jordan Justen wrote:
> Signed-off-by: Jordan Justen <jordan.l.jus...@intel.com>
> ---
>  tests/util/piglit-util-gl-common.c |   26 ++++++++++++++++++++++++--
>  1 file changed, 24 insertions(+), 2 deletions(-)

> diff --git a/tests/util/piglit-util-gl-common.c 
> b/tests/util/piglit-util-gl-common.c
> index f30a2fe..647eb89 100644
> --- a/tests/util/piglit-util-gl-common.c
> +++ b/tests/util/piglit-util-gl-common.c
> @@ -98,6 +98,24 @@ static const char** split_string(const char *string)
>       return (const char**) strings;
>  }

This patch needs a sprinkling of #ifdef's or else the gles builds will break.
GLES1 and GLES2 lack glGetStringi. Here is an untested change to the patch that
my fix it.

+#ifdef USE_OPENGL
> +static const char** get_gl_extension_array()
> +{
> +     const char **strings;
> +     int loop, num_extensions;
> +
> +     glGetIntegerv(GL_NUM_EXTENSIONS, &num_extensions);
> +     strings = malloc (sizeof(char*) * (num_extensions + 1));
> +     assert (strings != NULL);
> +
> +     for (loop = 0; loop < num_extensions; loop++) {
> +             strings[loop] = (const char*) glGetStringi(GL_EXTENSIONS, loop);
> +     }
> +
> +     strings[loop] = NULL;
> +
> +     return (const char**) strings;
> +}
+#endif

> +
>  static void initialize_piglit_extension_support(void)
>  {
>       const char *gl_extensions_string;
> @@ -106,8 +124,12 @@ static void initialize_piglit_extension_support(void)
>               return;
>       }
>  
+#if defined(USE_OPENGL_ES1) || defined(USE_OPENGL_ES2)
>       gl_extensions_string = (const char *) glGetString(GL_EXTENSIONS);
>       gl_extensions = split_string(gl_extensions_string);
+#elif defined(USE_OPENGL)
> +     if (piglit_get_gl_version() < 30) {
> +             gl_extensions_string = (const char *) 
> glGetString(GL_EXTENSIONS);
> +             gl_extensions = split_string(gl_extensions_string);
> +     } else {
> +             gl_extensions = get_gl_extension_array();
> +     }
+#endif
>  }
>  
>  bool piglit_is_extension_supported(const char *name)
> 
_______________________________________________
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to