Mesa (7.11): glx: add a few missing glXChooseFBConfig() attributes

Brian Paul brianp at kemper.freedesktop.org
Tue Jul 12 15:49:06 UTC 2011


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

Author: Brian Paul <brianp at vmware.com>
Date:   Mon Jul 11 08:00:59 2011 -0600

glx: add a few missing glXChooseFBConfig() attributes

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=38842

NOTE: This is a candidate for the 7.11 branch.
(cherry picked from commit d60880db35fd11d9348ce4b2bfbcc9325d2ebf91)

---

 src/gallium/state_trackers/glx/xlib/glx_api.c |    9 ++++++---
 src/mesa/drivers/x11/fakeglx.c                |    4 ++++
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/src/gallium/state_trackers/glx/xlib/glx_api.c b/src/gallium/state_trackers/glx/xlib/glx_api.c
index 6233fb8..a7aafd8 100644
--- a/src/gallium/state_trackers/glx/xlib/glx_api.c
+++ b/src/gallium/state_trackers/glx/xlib/glx_api.c
@@ -864,16 +864,19 @@ choose_visual( Display *dpy, int screen, const int *list, GLboolean fbConfig )
             parselist++;
             break;
          case GLX_FBCONFIG_ID:
+         case GLX_VISUAL_ID:
             if (!fbConfig)
                return NULL;
             parselist++;
             desiredVisualID = *parselist++;
             break;
          case GLX_X_RENDERABLE:
+         case GLX_MAX_PBUFFER_WIDTH:
+         case GLX_MAX_PBUFFER_HEIGHT:
+         case GLX_MAX_PBUFFER_PIXELS:
             if (!fbConfig)
-               return NULL;
-            parselist += 2;
-            /* ignore */
+               return NULL; /* invalid config option */
+            parselist += 2; /* ignore the parameter */
             break;
 
 #ifdef GLX_EXT_texture_from_pixmap
diff --git a/src/mesa/drivers/x11/fakeglx.c b/src/mesa/drivers/x11/fakeglx.c
index 48657b4..1f5fc33 100644
--- a/src/mesa/drivers/x11/fakeglx.c
+++ b/src/mesa/drivers/x11/fakeglx.c
@@ -1097,12 +1097,16 @@ choose_visual( Display *dpy, int screen, const int *list, GLboolean fbConfig )
             parselist++;
             break;
          case GLX_FBCONFIG_ID:
+         case GLX_VISUAL_ID:
             if (!fbConfig)
                return NULL;
             parselist++;
             desiredVisualID = *parselist++;
             break;
          case GLX_X_RENDERABLE:
+         case GLX_MAX_PBUFFER_WIDTH:
+         case GLX_MAX_PBUFFER_HEIGHT:
+         case GLX_MAX_PBUFFER_PIXELS:
             if (!fbConfig)
                return NULL;
             parselist += 2;




More information about the mesa-commit mailing list