]> git.cworth.org Git - apitrace-tests/commitdiff
gluCheckExtension does not exist on Windows.
authorJosé Fonseca <jose.r.fonseca@gmail.com>
Mon, 31 Oct 2011 14:00:13 +0000 (14:00 +0000)
committerJosé Fonseca <jose.r.fonseca@gmail.com>
Mon, 31 Oct 2011 14:00:13 +0000 (14:00 +0000)
apps/gl/gremedy.c

index 0f6597a8c3dfde18bb891464c6b9a7f8af98c735..4d4b3b8a1e0994b26473bf38496ff3ba4ccc4309 100644 (file)
 static int win;
 
 
 static int win;
 
 
+/**
+ * Identical to gluCheckExtension, which is not part of GLU on Windows.
+ */
+static GLboolean
+checkExtension(const char *extName, const GLubyte *extString)
+{
+   const char *p = (const char *)extString;
+   const char *q = extName;
+   char c;
+   do {
+       c = *p++;
+       if (c == '\0' || c == ' ') {
+           if (q && *q == '\0') {
+               return GL_TRUE;
+           } else {
+               q = extName;
+           }
+       } else {
+           if (q && *q == c) {
+               ++q;
+           } else {
+               q = 0;
+           }
+       }
+   } while (c);
+   return GL_FALSE;
+}
+
+
 static void checkGlError(const char *call) {
    GLenum error = glGetError();
    if (error != GL_NO_ERROR) {
 static void checkGlError(const char *call) {
    GLenum error = glGetError();
    if (error != GL_NO_ERROR) {
@@ -60,8 +89,8 @@ static void Init(void)
       
    extensions = glGetString(GL_EXTENSIONS);
    checkGlError("glGetString(GL_EXTENSIONS)");
       
    extensions = glGetString(GL_EXTENSIONS);
    checkGlError("glGetString(GL_EXTENSIONS)");
-   has_GL_GREMEDY_string_marker = gluCheckExtension("GL_GREMEDY_string_marker", extensions);
-   has_GL_GREMEDY_frame_terminator = gluCheckExtension("GL_GREMEDY_string_marker", extensions);
+   has_GL_GREMEDY_string_marker = checkExtension("GL_GREMEDY_string_marker", extensions);
+   has_GL_GREMEDY_frame_terminator = checkExtension("GL_GREMEDY_string_marker", extensions);
 
    if (GLEW_VERSION_3_0) {
       GLint has_GL3_GREMEDY_string_marker = 0;
 
    if (GLEW_VERSION_3_0) {
       GLint has_GL3_GREMEDY_string_marker = 0;