Mesa (master): st/glx: accept GLX_SAMPLE_BUFFERS/SAMPLES_ARB == 0

Brian Paul brianp at kemper.freedesktop.org
Mon Dec 3 18:30:59 UTC 2012


Module: Mesa
Branch: master
Commit: c6d74bfaf61a6d52e6f886e33f2e98c3007d79fc
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c6d74bfaf61a6d52e6f886e33f2e98c3007d79fc

Author: Brian Paul <brianp at vmware.com>
Date:   Sun Dec  2 16:18:22 2012 -0700

st/glx: accept GLX_SAMPLE_BUFFERS/SAMPLES_ARB == 0

Only fail if GLX_SAMPLE_BUFFERS_ARB or GLX_SAMPLES_ARB are non-zero.
We were already doing this in the older swrast/glx code.

This fixes a piglit/waffle problem where we'd always fail to get a
visual/config and report the test as "skip".

Note: This is a candidate for the stable branches.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/gallium/state_trackers/glx/xlib/glx_api.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/gallium/state_trackers/glx/xlib/glx_api.c b/src/gallium/state_trackers/glx/xlib/glx_api.c
index 08db6e8..8e3c6b8 100644
--- a/src/gallium/state_trackers/glx/xlib/glx_api.c
+++ b/src/gallium/state_trackers/glx/xlib/glx_api.c
@@ -832,11 +832,13 @@ choose_visual( Display *dpy, int screen, const int *list, GLboolean fbConfig )
           * GLX_ARB_multisample
           */
          case GLX_SAMPLE_BUFFERS_ARB:
-            /* ms not supported */
-            return NULL;
          case GLX_SAMPLES_ARB:
-            /* ms not supported */
-            return NULL;
+            parselist++;
+            if (*parselist++ != 0) {
+               /* ms not supported */
+               return NULL;
+            }
+            break;
 
          /*
           * FBConfig attribs.




More information about the mesa-commit mailing list