diff -r ef0373b55136 -r 758a864f9613 src/opengl/qglextensions.cpp --- a/src/opengl/qglextensions.cpp Fri Sep 17 08:34:18 2010 +0300 +++ b/src/opengl/qglextensions.cpp Mon Oct 04 01:19:32 2010 +0300 @@ -255,6 +255,10 @@ glFramebufferTextureLayerEXT = (_glFramebufferTextureLayerEXT) ctx->getProcAddress(QLatin1String("glFramebufferTextureLayerEXT")); glFramebufferTextureFaceEXT = (_glFramebufferTextureFaceEXT) ctx->getProcAddress(QLatin1String("glFramebufferTextureFaceEXT")); + // Must at least have the FragmentShader extension to continue. + if (!(QGLExtensions::glExtensions() & QGLExtensions::FragmentShader)) + return false; + glCreateShader = (_glCreateShader) ctx->getProcAddress(QLatin1String("glCreateShader")); if (glCreateShader) { glShaderSource = (_glShaderSource) ctx->getProcAddress(QLatin1String("glShaderSource"));