Bug 11705

Summary: Specifying GLX_STEREO as GL_FALSE causes glXChooseFBConfig to fail for Pbuffers
Product: Mesa Reporter: Justin Couch <justin>
Component: GLXAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: fix handling of GLX_STEREO token

Description Justin Couch 2007-07-23 15:34:39 UTC
The default value for GLX_STEREO is GL_FALSE when used in a call to glXChooseFBConfig(). If you don't specify this value then the call returns a chosen config correctly. However, at least in the case of Pbuffer creation, if you explicitly pass it the default value then the call will return no matches. This is incorrect behaviour because explicitly stating the default value should act the same way as not stating it.

Here is the minmalist list of attributes that I use to trigger the bug when calling the glXChooseFBConfig().

int * iattributes ....

iattributes[0] = GLX_DRAWABLE_TYPE;
iattributes[1] = GLX_PBUFFER_BIT;
iattributes[2] = GLX_RENDER_TYPE;
iattributes[3] = GLX_RGBA_BIT;
iattributes[4] = GLX_DOUBLEBUFFER;
iattributes[5] = GL_FALSE;
iattributes[4] = GLX.GLX_STEREO;
iattributes[5] = GL_FALSE;
iattributes[6] = 0;

I'm not sure when this started happening, but I have both MESA 6.5.1 and MESA 7.0 on my development server. 

Other relevant OS information:

Fedora Core 6 with all latest updates to date of this bug report. 
Running under Xvfb with varying command line arguments (doesn't matter what I use here, they always fail).

MESA 6.5.1 from the FC6 distro. Mesa 7.0 compiled from source download on Sourceforge.

Using pure software rendering. No DRI enabled or even compiled into the code.
Comment 1 Brian Paul 2007-07-23 15:50:08 UTC
Created attachment 10861 [details] [review]
fix handling of GLX_STEREO token

The attached patch fixes this.  I'll check it into git...
Comment 2 Adam Jackson 2009-08-24 12:27:24 UTC
Mass version move, cvs -> git

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.