diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-01-20 08:39:10 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-01-20 08:39:10 (GMT) |
commit | 92e89ade291877a1146ca3e121fba5f491f61b84 (patch) | |
tree | 1f2f4fbcd1ef377880f5fc69bd0574dc2fc339b4 /src/opengl | |
parent | c5ea31fa7784884a86cdae95e3a018d790853a83 (diff) | |
parent | 092cfe31463146c17f99543e36cdd7da85961afc (diff) | |
download | Qt-92e89ade291877a1146ca3e121fba5f491f61b84.zip Qt-92e89ade291877a1146ca3e121fba5f491f61b84.tar.gz Qt-92e89ade291877a1146ca3e121fba5f491f61b84.tar.bz2 |
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Fixed a crash under X11 when drawing QPixmaps to QGLPixelBuffers.
Diffstat (limited to 'src/opengl')
-rw-r--r-- | src/opengl/qgl_x11.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/opengl/qgl_x11.cpp b/src/opengl/qgl_x11.cpp index f4cc7c7..61a16be 100644 --- a/src/opengl/qgl_x11.cpp +++ b/src/opengl/qgl_x11.cpp @@ -1651,8 +1651,12 @@ static bool qt_resolveTextureFromPixmap(QPaintDevice *paintDevice) { return false; // Can't use TFP without NPOT } + const QX11Info *xinfo = qt_x11Info(paintDevice); - QGLExtensionMatcher extensions(glXQueryExtensionsString(xinfo->display(), xinfo->screen())); + 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")) { glXBindTexImageEXT = (qt_glXBindTexImageEXT) qglx_getProcAddress("glXBindTexImageEXT"); glXReleaseTexImageEXT = (qt_glXReleaseTexImageEXT) qglx_getProcAddress("glXReleaseTexImageEXT"); |