src/opengl/qgl_x11.cpp
branchRCL_3
changeset 8 3f74d0d4af4c
parent 4 3b1da2848fc7
--- a/src/opengl/qgl_x11.cpp	Mon Mar 15 12:43:09 2010 +0200
+++ b/src/opengl/qgl_x11.cpp	Thu Apr 08 14:19:33 2010 +0300
@@ -1656,8 +1656,11 @@
         Display *display = xinfo ? xinfo->display() : X11->display;
         int screen = xinfo ? xinfo->screen() : X11->defaultScreen;
 
-        QGLExtensionMatcher extensions(glXQueryExtensionsString(display, screen));
-        if (extensions.match("GLX_EXT_texture_from_pixmap")) {
+        QGLExtensionMatcher serverExtensions(glXQueryExtensionsString(display, screen));
+        QGLExtensionMatcher clientExtensions(glXGetClientString(display, GLX_EXTENSIONS));
+        if (serverExtensions.match("GLX_EXT_texture_from_pixmap")
+            && clientExtensions.match("GLX_EXT_texture_from_pixmap"))
+        {
             glXBindTexImageEXT = (qt_glXBindTexImageEXT) qglx_getProcAddress("glXBindTexImageEXT");
             glXReleaseTexImageEXT = (qt_glXReleaseTexImageEXT) qglx_getProcAddress("glXReleaseTexImageEXT");
         }