[Wine] Re: PWGL, some improvements

Thunderbird wineforum-user at winehq.org
Mon Nov 24 07:20:12 CST 2008

Could you attach a screenshot of the problem? Note that patch is very hacky and is very likely not to work for you. The problem is that on Linux and Windows there is a slight difference in GLX and WGL on how to set up OpenGL.

When an app wants to use OpenGL it needs to create a so called 'opengl context'. In its most simple form you use one context for each window (though they can be shared if the pixel formats are the same). Most of the time you want to share resources (e.g. textures) between contexts and for that purpose you use 'wglShareLists' on Windows. In case of GLX sharing 'display lists' between context needs to be done at context creation time.

So Windows does:
ctx1 = wglCreateContext(..)
ctx2 = wglCreateContext(..)
wglShareLists(ctx1, ctx2)

On Linux you do:
ctx1 = glxCreateContext(NULL)
ctx2 = glXCreateContext(ctx1)

In order to emulate wglShareLists we don't directly create a GLX context when wglCreateContext is called but delay this until it is used or when wglShareLists is called. This makes most apps happy but if a program uses a bad 'pattern' it can cause drawing issues in programs.

Assuming your issue is opengl related, the program is likely using a bad pattern.

More information about the wine-users mailing list