[Bug 41930] Civilization III Complete shows black terrain (Wine compiled with OSMesa support)

WineHQ Bugzilla wine-bugs at winehq.org
Sat Feb 15 15:30:57 CST 2020


https://bugs.winehq.org/show_bug.cgi?id=41930

--- Comment #28 from Bryan Varner <bryan at varnernet.com> ---
So I've determined that the type paramater to pOSMesaMakeCurrent is correct for
both MESA and for the intended use-case... I think.

BUT.

If you force pOSMesaMakeCurrent to fail, due issuing the wrong type (BYTE for a
5_6_5 buffer), then the game appears to work.

HOWEVER.

The code-paths executed by the game become very different.

With the osmesa bits not returning errors, the game normally calls:

wglCreateContext
wglMakeCurrent(to activate)
... draw things ...
wglMakeCurrent(to deactivate)
wglDeleteContext

In a pretty loop, but the backgrounds fail to work as intended at some point --
(one of the createContexts contains a deviation in the dib width / height, and
that's when things go awry)

If you make the osmesa bits throw errors in OSMesaMakeCurrent, then the game
only ever calls

wglMakeCurrent over and over, to try and activate a context.
It never calls it with null parameters to unset the active context.
it never deletes contexts.

Strange.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list