diff --git a/engines/grim/gfx_opengl.cpp b/engines/grim/gfx_opengl.cpp index 0b562bda57f..9a28d99f2f0 100644 --- a/engines/grim/gfx_opengl.cpp +++ b/engines/grim/gfx_opengl.cpp @@ -197,7 +197,7 @@ void GfxOpenGL::initExtensions() { #endif const char *extensions = (const char *)glGetString(GL_EXTENSIONS); - if (strstr(extensions, "ARB_fragment_program")) { + if (extensions && strstr(extensions, "ARB_fragment_program")) { _useDepthShader = true; _useDimShader = true; } diff --git a/graphics/opengl/context.cpp b/graphics/opengl/context.cpp index 6e68297cea0..a8de06de197 100644 --- a/graphics/opengl/context.cpp +++ b/graphics/opengl/context.cpp @@ -131,6 +131,10 @@ void Context::initialize(ContextType contextType) { int Context::getGLSLVersion() const { const char *glslVersionString = (const char *)glGetString(GL_SHADING_LANGUAGE_VERSION); + if (!glslVersionString) { + warning("Could not get GLSL version"); + return 0; + } const char *glslVersionFormat; if (type == kContextGL) {