https://bugs.winehq.org/show_bug.cgi?id=38087
--- Comment #5 from Stefan Dösinger stefan@codeweavers.com --- Yes, the game has plenty of race conditions. Start it with taskset -c 1.
Meanwhile, my problem was actually that I forgot to recompile my 64 bit explorer.exe. Now it is reliable.
The actual change this patch was supposed to introduce (the one in swapchain_activate) is never run. The problem happens because the changed redundant mode setting check now directly calls EnumDisplaySettingsExW(ENUM_CURRENT_SETTINGS) instead of wined3d_get_adapter_display_mode, so it misses the bpp override in the latter function. Therefore it thinks the mode is changed and re-applies the mouse clip whereas it previously did not.
(The previous code had similar problems with D3DFMT_A8R8G8B8 vs D3DFMT_X8R8G8B8).
The proper thing to do would be to move the redundant mode application check to user32 and the bpp faking to winex11.drv (or maybe user32, if winemac.drv needs it in the same way). But I also recommend to check if the fix for bug 33479 should really be susceptible to a redundant ClipCursor call. Perhaps this is a bug on its own.