http://bugs.winehq.org/show_bug.cgi?id=33407
--- Comment #6 from Matteo Bruni matteo.mystral@gmail.com 2013-04-18 16:22:11 CDT --- Created attachment 44210 --> http://bugs.winehq.org/attachment.cgi?id=44210 Patch
(In reply to comment #0)
The only string in terminal: "err:wgl:glxdrv_wglShareLists Could not share display lists, one of the contexts has been current already !"
That was it. Essentially, in WGL you can make a context share its resources with another context at any point in time, while with GLX you can only do that at context creation time. In Wine we simply recreate the context from scratch, but that works only if it hasn't been used in the meantime.
This program, for some reason, creates a new context, makes it current, then restores the previous context and proceeds to call wglShareLists on the new context. This is enough to make our check fail although the new context wasn't really "used".
I'm not sure what is actually allowed in WGL, but in any case there is no good way for us to know whether a context was used besides the check currently in place. As it stands, this patch (which makes this program work for me) is just a hack and there might be no good way of solving this.