https://bugs.winehq.org/show_bug.cgi?id=9378
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
--- Comment #18 from winetest@luukku.com --- (In reply to Alexander Puzankov from comment #17)
Problem is in pixel formats returned by DescribePixelFormat, specifically in the cAlphaShift field. Combat Mission engine enumerates these until cAlphaShift=24 is found (amongst other checks), but Wine always sets 0 there. This patch seems to fix the issue:
--- a/dlls/winex11.drv/opengl.c +++ b/dlls/winex11.drv/opengl.c @@ -1725,7 +1725,7 @@ static int glxdrv_wglDescribePixelFormat ppfd->cGreenBits = gb; ppfd->cGreenShift = bb + ab; ppfd->cAlphaBits = ab;
- ppfd->cAlphaShift = 0;
- ppfd->cAlphaShift = 24; } else { ppfd->cRedBits = 0; ppfd->cRedShift = 0;
But I'm not entirely sure this doesn't break something else (in other apps), or is otherwise the correct way.
Somehow related bug 38763.