- register build conflict with spidermonkey until the firefox build failure can be fixed [2] PR: ports/159709 [1] ports/159831 [2] Submitted by: Ruslan Mahmatkhanov <cvs-src@yandex.ru> [1]
35 lines
1.5 KiB
Text
35 lines
1.5 KiB
Text
--- toolkit/xre/glxtest.cpp.orig 2011-08-11 17:41:31.000000000 -0400
|
|
+++ toolkit/xre/glxtest.cpp 2011-08-23 15:09:48.000000000 -0400
|
|
@@ -114,6 +114,9 @@
|
|
typedef GLXFBConfig* (* PFNGLXQUERYEXTENSION) (Display *, int *, int *);
|
|
PFNGLXQUERYEXTENSION glXQueryExtension = cast<PFNGLXQUERYEXTENSION>(dlsym(libgl, "glXQueryExtension"));
|
|
|
|
+ typedef GLXFBConfig* (* PFNGLXQUERYVERSION) (Display *, int *, int *);
|
|
+ PFNGLXQUERYVERSION glXQueryVersion = cast<PFNGLXQUERYVERSION>(dlsym(libgl, "glXQueryVersion"));
|
|
+
|
|
typedef GLXFBConfig* (* PFNGLXCHOOSEFBCONFIG) (Display *, int, const int *, int *);
|
|
PFNGLXCHOOSEFBCONFIG glXChooseFBConfig = cast<PFNGLXCHOOSEFBCONFIG>(dlsym(libgl, "glXChooseFBConfig"));
|
|
|
|
@@ -139,6 +142,7 @@
|
|
PFNGLGETSTRING glGetString = cast<PFNGLGETSTRING>(dlsym(libgl, "glGetString"));
|
|
|
|
if (!glXQueryExtension ||
|
|
+ !glXQueryVersion ||
|
|
!glXChooseFBConfig ||
|
|
!glXGetVisualFromFBConfig ||
|
|
!glXCreatePixmap ||
|
|
@@ -158,6 +162,14 @@
|
|
///// Check that the GLX extension is present /////
|
|
if (!glXQueryExtension(dpy, NULL, NULL))
|
|
fatal_error("GLX extension missing");
|
|
+
|
|
+ ///// Check that the GLX version is >= 1.3, needed for glXCreatePixmap, bug 659932 /////
|
|
+ int majorVersion, minorVersion;
|
|
+ if (!glXQueryVersion(dpy, &majorVersion, &minorVersion))
|
|
+ fatal_error("Unable to query GLX version");
|
|
+
|
|
+ if (majorVersion < 1 || (majorVersion == 1 && minorVersion < 3))
|
|
+ fatal_error("GLX version older than the required 1.3");
|
|
|
|
XSetErrorHandler(x_error_handler);
|
|
|