summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/x11
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2012-01-10 19:32:38 -0700
committerBrian Paul <[email protected]>2012-01-11 12:43:45 -0700
commit0a20051e6da99e91b7bf589ea457c77a8b618f26 (patch)
tree50900d2fed51aaf8c76b3a5f6de867b6a029e2f9 /src/mesa/drivers/x11
parent7f6de60c585c6ac99d8e6b1280a8d7ce82f3c5e2 (diff)
xlib: stop calling XShmQueryVersion()
It caused an X protocol error in some (rare) situations. This is a follow-on to the previous commits which fixes a bug reported by Wayne E. Robertz. NOTE: This is a candidate for the 7.11 branch. Reviewed-by: Adam Jackson <[email protected]>
Diffstat (limited to 'src/mesa/drivers/x11')
-rw-r--r--src/mesa/drivers/x11/xm_api.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/mesa/drivers/x11/xm_api.c b/src/mesa/drivers/x11/xm_api.c
index 81b24593764..bdee2a2a341 100644
--- a/src/mesa/drivers/x11/xm_api.c
+++ b/src/mesa/drivers/x11/xm_api.c
@@ -114,16 +114,16 @@ static int host_byte_order( void )
static int check_for_xshm( XMesaDisplay *display )
{
#if defined(USE_XSHM)
- int major, minor, ignore;
- Bool pixmaps;
+ int ignore;
if (XQueryExtension( display, "MIT-SHM", &ignore, &ignore, &ignore )) {
- if (XShmQueryVersion( display, &major, &minor, &pixmaps )==True) {
- return (pixmaps==True) ? 2 : 1;
- }
- else {
- return 0;
- }
+ /* Note: we're no longer calling XShmQueryVersion() here. It seems
+ * to be flakey (triggers a spurious X protocol error when we close
+ * one display connection and start using a new one. XShm has been
+ * around a long time and hasn't changed so if MIT_SHM is supported
+ * we assume we're good to go.
+ */
+ return 2;
}
else {
return 0;