PKGBUILDs/extra/qt5/fs47703.patch
2016-01-11 13:20:23 +00:00

50 lines
2.3 KiB
Diff

From f6ba546d57018ddd2bfdc226db498f12a0c2d8bf Mon Sep 17 00:00:00 2001
From: =?utf8?q?D=C4=81vis=20Mos=C4=81ns?= <davispuh@gmail.com>
Date: Fri, 8 Jan 2016 04:12:13 +0200
Subject: [PATCH] Don't pass NULL Display to glXGetClientString
glXGetCurrentDisplay can return NULL so need to check
for that.
Change-Id: I1b85a5c575d1deb24dcce4719b6f737283adeabe
---
.../platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp | 5 ++++-
.../platforms/xcb/gl_integrations/xcb_glx/qxcbglxintegration.cpp | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
index 8b14fc7..3412f3f 100644
--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -644,7 +644,10 @@ void QGLXContext::queryDummyContext()
oldSurface = oldContext->surface();
QScopedPointer<QSurface> surface;
- const char *glxvendor = glXGetClientString(glXGetCurrentDisplay(), GLX_VENDOR);
+ Display *display = glXGetCurrentDisplay();
+ const char *glxvendor = 0;
+ if (display)
+ glxvendor = glXGetClientString(display, GLX_VENDOR);
if (glxvendor && !strcmp(glxvendor, "ATI")) {
QWindow *window = new QWindow;
window->resize(64, 64);
diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxintegration.cpp
index ce72cb6..cd4949af 100644
--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxintegration.cpp
+++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxintegration.cpp
@@ -195,7 +195,10 @@ QPlatformOffscreenSurface *QXcbGlxIntegration::createPlatformOffscreenSurface(QO
static bool glxPbufferUsable = true;
if (!vendorChecked) {
vendorChecked = true;
- const char *glxvendor = glXGetClientString(glXGetCurrentDisplay(), GLX_VENDOR);
+ Display *display = glXGetCurrentDisplay();
+ const char *glxvendor = 0;
+ if (display)
+ glxvendor = glXGetClientString(display, GLX_VENDOR);
if (glxvendor && !strcmp(glxvendor, "ATI"))
glxPbufferUsable = false;
}
--
2.6.2.2.g1b5ffa3