From f1eef40c2a2c865999d29230c84cd709784ca294 Mon Sep 17 00:00:00 2001 From: Alexandros Frantzis Date: Mon, 14 Feb 2011 14:45:52 +0200 Subject: [PATCH] gl: Correctly extract GL version from OpenGL ES version strings The GL version string returned by glGetString() for GLES doesn't have the version number at the beginning of the string. Signed-off-by: Chris Wilson --- src/cairo-gl-info.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/cairo-gl-info.c b/src/cairo-gl-info.c index 5b4190e4c..168d19492 100644 --- a/src/cairo-gl-info.c +++ b/src/cairo-gl-info.c @@ -38,13 +38,17 @@ _cairo_gl_get_version (void) int major, minor; const char *version = (const char *) glGetString (GL_VERSION); const char *dot = version == NULL ? NULL : strchr (version, '.'); + const char *major_start = dot; /* Sanity check */ if (dot == NULL || dot == version || *(dot + 1) == '\0') { major = 0; minor = 0; } else { - major = strtol (version, NULL, 10); + /* Find the start of the major version in the string */ + while (major_start > version && *major_start != ' ') + --major_start; + major = strtol (major_start, NULL, 10); minor = strtol (dot + 1, NULL, 10); }