[Bug 5146] New: Wine x11driver does not work correctly with glx 1.2 servers

Wine Bugs wine-bugs at winehq.org
Fri Apr 28 14:59:37 CDT 2006


http://bugs.winehq.org/show_bug.cgi?id=5146

           Summary: Wine x11driver does not work correctly with glx 1.2
                    servers
           Product: Wine
           Version: 0.9.12.
          Platform: All
        OS/Version: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: wine-x11driver
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: srainwater at ncc.com


Certain functions such as glXChooseFBConfig that are supported by glx 1.3 and
higher servers are called even when a glx 1.2 server is used, resulting in
crashes. This problem seems to affect all wine users who rely on Mesa OpenGL
support (as used in xorg/xfree86 when hardware acceleration is not available).
This is because Mesa doesn't support glXChooseFBConfig and other 1.3 APIs yet.
 
This is a regression. Wine versions 20050419 and earlier used alternate 1.2 APIs
such as glXChooseVisual which worked with both glx 1.2 and 1.3 servers. The
offending code is found in /dlls/x11drv/opengl.c - there may be other areas of
the code involved as well but the use of the 1.3 API to select the X drawable
seems to be the main culprit.

A good approach would be to follow the guidelines suggested in the OpenGL
documentation and query the server to determine if it supports the 1.2 or 1.3
API and then use the appropriate set of functions to obtain an X drawable. An
example of this method is described here:

http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.doc/libs/openglrf/HowRenderXdraw.htm

By falling back to 1.2 functions when a 1.3 glx server is not available, many
apps in the app database which used to work with wine version 20050419 and
earlier should be usable again. In particular, many of those failing with this
error:

X11DRV_ChoosePixelFormat glXChooseFBConfig returns NULL (glError: 0)

This problem may be responsible for several glXChooseFBConfig bug reports such
as bug 3277 and others.

Until the built-in Mesa support in xorg offers the 1.3 API, it seems counter
productive to make a 1.3 glx server a requirement of running wine.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list