[0.4.10][WINED3D] Workaround regression CORE-15408
authorJoachim Henze <Joachim.Henze@reactos.org>
Sun, 4 Oct 2020 15:11:07 +0000 (17:11 +0200)
committerJoachim Henze <Joachim.Henze@reactos.org>
Sun, 4 Oct 2020 15:11:07 +0000 (17:11 +0200)
commitf38baae9e774465e6353d8b325182b66b4b4a6ed
tree8e4b60574e508503bfc168545821497a824d0ae6
parenta9d19a3e3fefde7c597b0f999327c82d76f0f740
[0.4.10][WINED3D] Workaround regression CORE-15408

Many 3D applications crashed with 'WineD3D fake window' msgbox
if they were used in VirtualBox with graphics driver
'VBoxDisp.sys from VM guest additions + installed 3D acceleration'

That was a regression of SVN r75847 == git 0.4.7-dev-319-g
3d13ed394efdd0ce0aef4e10965b1d08334394ec

Contrary we had no such issues with the SW emulation.
The reason for the bug is that
VBoxDisp only supports OpenGL 2.1 (GLSL 120) and WineD3D
tried to use shaders for OpenGL 3.2 (GLSL 150).

This workaround disables the usage in a hard-coded way for
all graphics adapters. Should be ok for now, as ros does not
really support any modern GPU drivers yet.
Proper working runtime detection would be better ofc.

Thx to Doug Lyons & Fabian Maurer

Fix cherry picked from 0.4.14-dev-113-g
082f230ac76087915355c962a307f21ade9dae96
dll/directx/wine/wined3d/utils.c