aboutsummaryrefslogtreecommitdiff
path: root/glfw/src/context.c
diff options
context:
space:
mode:
Diffstat (limited to 'glfw/src/context.c')
-rw-r--r--glfw/src/context.c35
1 files changed, 17 insertions, 18 deletions
diff --git a/glfw/src/context.c b/glfw/src/context.c
index 8f01846..f8b8008 100644
--- a/glfw/src/context.c
+++ b/glfw/src/context.c
@@ -588,7 +588,6 @@ GLFWAPI void glfwSwapInterval(int interval)
GLFWAPI int glfwExtensionSupported(const char* extension)
{
- const GLubyte* extensions;
_GLFWwindow* window;
_GLFW_REQUIRE_INIT_OR_RETURN(GL_FALSE);
@@ -600,29 +599,14 @@ GLFWAPI int glfwExtensionSupported(const char* extension)
return GL_FALSE;
}
- if (!extension || *extension == '\0')
+ if (*extension == '\0')
{
_glfwInputError(GLFW_INVALID_VALUE, NULL);
return GL_FALSE;
}
- if (window->context.major < 3)
- {
- // Check if extension is in the old style OpenGL extensions string
-
- extensions = glGetString(GL_EXTENSIONS);
- if (!extensions)
- {
- _glfwInputError(GLFW_PLATFORM_ERROR,
- "Failed to retrieve extension string");
- return GL_FALSE;
- }
-
- if (_glfwStringInExtensionString(extension, extensions))
- return GL_TRUE;
- }
#if defined(_GLFW_USE_OPENGL)
- else
+ if (window->context.major >= 3)
{
int i;
GLint count;
@@ -645,7 +629,22 @@ GLFWAPI int glfwExtensionSupported(const char* extension)
return GL_TRUE;
}
}
+ else
#endif // _GLFW_USE_OPENGL
+ {
+ // Check if extension is in the old style OpenGL extensions string
+
+ const GLubyte* extensions = glGetString(GL_EXTENSIONS);
+ if (!extensions)
+ {
+ _glfwInputError(GLFW_PLATFORM_ERROR,
+ "Failed to retrieve extension string");
+ return GL_FALSE;
+ }
+
+ if (_glfwStringInExtensionString(extension, extensions))
+ return GL_TRUE;
+ }
// Check if extension is in the platform-specific string
return _glfwPlatformExtensionSupported(extension);