summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2012-07-04 11:58:40 -0700
committerEric Anholt <[email protected]>2012-07-12 12:29:12 -0700
commit6882381a2efbdf06b7002d11468c94b9964c2bc8 (patch)
tree05e78c7dc8cb8783d1a471ef207c9bf9a72591c1 /src
parentf92873be2c7fcb07154282bd0e418a4c88b6507e (diff)
mesa: Require current libxcb.
Without that, people with buggy apps that looked at just the server string for GLX_ARB_create_context would call this function that just threw an error when you tried to make a context. Google shows plenty of complaints about this. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/glx/clientinfo.c7
-rw-r--r--src/glx/create_context.c14
-rw-r--r--src/glx/glxextensions.c10
-rw-r--r--src/glx/tests/Makefile.am3
4 files changed, 1 insertions, 33 deletions
diff --git a/src/glx/clientinfo.c b/src/glx/clientinfo.c
index 97d43cea0e3..429e9a3bfa7 100644
--- a/src/glx/clientinfo.c
+++ b/src/glx/clientinfo.c
@@ -39,7 +39,6 @@ __glX_send_client_info(struct glx_display *glx_dpy)
Bool any_screen_has_ARB_create_context = False;
Bool any_screen_has_ARB_create_context_profile = False;
unsigned i;
-#ifdef HAVE_XCB_GLX_CREATE_CONTEXT
static const uint32_t gl_versions[] = {
1, 4,
};
@@ -48,7 +47,6 @@ __glX_send_client_info(struct glx_display *glx_dpy)
};
static const char glx_extensions[] =
"GLX_ARB_create_context GLX_ARB_create_context_profile";
-#endif
/* There are three possible flavors of the client info structure that the
* client could send to the server. The version sent depends on the
@@ -125,7 +123,6 @@ __glX_send_client_info(struct glx_display *glx_dpy)
* THE ORDER IS IMPORTANT. We want to send the most recent version of the
* protocol that the server can support.
*/
-#ifdef HAVE_XCB_GLX_CREATE_CONTEXT
if (glx_dpy->majorVersion == 1 && glx_dpy->minorVersion == 4
&& any_screen_has_ARB_create_context_profile) {
xcb_glx_set_client_info_2arb(c,
@@ -148,9 +145,7 @@ __glX_send_client_info(struct glx_display *glx_dpy)
gl_versions,
gl_extension_string,
glx_extensions);
- } else
-#endif
- {
+ } else {
xcb_glx_client_info(c,
GLX_MAJOR_VERSION, GLX_MINOR_VERSION,
gl_extension_length,
diff --git a/src/glx/create_context.c b/src/glx/create_context.c
index a1a55b33538..a755e83f448 100644
--- a/src/glx/create_context.c
+++ b/src/glx/create_context.c
@@ -99,7 +99,6 @@ glXCreateContextAttribsARB(Display *dpy, GLXFBConfig config,
* the protocol error and handle it. Part of handling the error is freeing
* the possibly non-NULL value returned by this function.
*/
-#ifdef HAVE_XCB_GLX_CREATE_CONTEXT
cookie =
xcb_glx_create_context_attribs_arb_checked(c,
gc->xid,
@@ -111,19 +110,6 @@ glXCreateContextAttribsARB(Display *dpy, GLXFBConfig config,
(const uint32_t *)
attrib_list);
err = xcb_request_check(c, cookie);
-#else
- /* This is a hugely ugly hack to make things compile on systems that lack
- * the proper XCB version.
- */
- memset(&cookie, 0, sizeof(cookie));
-
- err = calloc(1, sizeof(*err));
- err->error_code = BadRequest;
- err->sequence = dpy->request;
- err->resource_id = gc->xid;
- err->minor_code = gc->majorOpcode;
- err->major_code = 34;
-#endif
if (err != NULL) {
gc->vtable->destroy(gc);
gc = NULL;
diff --git a/src/glx/glxextensions.c b/src/glx/glxextensions.c
index 9ddc39d98ca..eb0890e23f1 100644
--- a/src/glx/glxextensions.c
+++ b/src/glx/glxextensions.c
@@ -71,15 +71,9 @@ struct extension_info
/* *INDENT-OFF* */
static const struct extension_info known_glx_extensions[] = {
-#ifdef HAVE_XCB_GLX_CREATE_CONTEXT
{ GLX(ARB_create_context), VER(0,0), Y, N, N, N },
{ GLX(ARB_create_context_profile), VER(0,0), Y, N, N, N },
{ GLX(ARB_create_context_robustness), VER(0,0), Y, N, N, N },
-#else
- { GLX(ARB_create_context), VER(0,0), N, N, N, N },
- { GLX(ARB_create_context_profile), VER(0,0), N, N, N, N },
- { GLX(ARB_create_context_robustness), VER(0,0), N, N, N, N },
-#endif
{ GLX(ARB_get_proc_address), VER(1,4), Y, N, Y, N },
{ GLX(ARB_multisample), VER(1,4), Y, Y, N, N },
{ GLX(ATI_pixel_format_float), VER(0,0), N, N, N, N },
@@ -87,11 +81,7 @@ static const struct extension_info known_glx_extensions[] = {
{ GLX(EXT_visual_info), VER(0,0), Y, Y, N, N },
{ GLX(EXT_visual_rating), VER(0,0), Y, Y, N, N },
{ GLX(EXT_framebuffer_sRGB), VER(0,0), Y, Y, N, N },
-#ifdef HAVE_XCB_GLX_CREATE_CONTEXT
{ GLX(EXT_create_context_es2_profile), VER(0,0), Y, N, N, Y },
-#else
- { GLX(EXT_create_context_es2_profile), VER(0,0), N, N, N, N },
-#endif
{ GLX(MESA_copy_sub_buffer), VER(0,0), Y, N, N, N },
{ GLX(MESA_multithread_makecurrent),VER(0,0), Y, N, Y, N },
{ GLX(MESA_swap_control), VER(0,0), Y, N, N, Y },
diff --git a/src/glx/tests/Makefile.am b/src/glx/tests/Makefile.am
index b0d1db5c2d6..ad18f85fe01 100644
--- a/src/glx/tests/Makefile.am
+++ b/src/glx/tests/Makefile.am
@@ -5,7 +5,6 @@ AM_CPPFLAGS = \
-I$(top_builddir)/include \
$(X11_CFLAGS)
-if HAVE_XCB_GLX_CREATE_CONTEXT
TESTS = glx-test
check_PROGRAMS = glx-test
@@ -20,5 +19,3 @@ glx_test_LDADD = \
$(top_builddir)/src/glx/libglx.la \
$(top_builddir)/src/gtest/libgtest.la \
-lpthread
-
-endif