OpenGL fix Mesa/DRI regression
Roderick Colenbrander
thunderbird2k at gmx.net
Fri Aug 25 17:50:22 CDT 2006
Hi,
Yesterday I submitted a patch which fixed support for the closed source ATI
drivers. The patch was tested on the ati drivers, the nvidia drivers and
using plain mesa (without dri).
The patch itself was correct but it still caused a regression in case of using
Mesa + DRI. As I mentioned yesterday the GLX client version should be used in
case of direct rendering. The client libGL then needs to implement the
functions for the version it advertises. This is how it should work in
theory.
In case of Mesa + DRI the advertised client libGL version is 1.3 or 1.4 and
the server version is 1.2. In case of the DRI regression the problem is the
function glXQueryDrawable. This function is part of GLX 1.3 but Mesa
implements it using a GLX Xserver request. Because the server version isn't
1.3 this fails. This is what caused a regression.
The patch changes the way glXQueryDrawable is used. We now only dynamicly load
it when the Xserver speaks GLX 1.3 or higher. The function is only used in a
few lines of debugging related code, so it is not very critical. The function
in question already checked if the function pointer was null and what the glx
version was. I removed the glx version check as it isn't usefull because it
can be the client glx version aswell.
Regards
Roderick Colenbrander
-------------- next part --------------
A non-text attachment was scrubbed...
Name: x11drv_opengl_fix.patch
Type: text/x-diff
Size: 2904 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20060825/426e6669/x11drv_opengl_fix.bin
More information about the wine-patches
mailing list