This finally solves a FIXME that was added back in 1997.
NFS High Stakes (and Motor City Online) both emit a 0x190 access
violation on startup (according to game's strings this was meant
to be debugger detection; I think this was done to interfere in
a DRM bypass but I'm probably wrong).
But anyway that feature causes a Wine Debugger dialog to appear
when starting the games (if you click "Show Details" though they
suddenly start working normally but this is an extra annoyance
for average people who just want to play the game).
This change prevents that by not starting the debugger if the
SEM_NOGPFAULTERRORBOX flag is set (if that flag wasn't set then
people would be complaining about the game crashing every time)
which lets the exception silently go through (it can still be seen
with WINEDEBUG=+seh set though).
I'm not sure how I can test for this exception handling behavior
(I'm thinking of calling RaiseException() inside a __try/__except
block but that might not be exactly what the games are doing).
This patch was originally posted by Zeb in a diff form (so the
patch description has been written by me, DodoGTA).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4567
This patch set now has 24 test failures in wmvcore/tests/wmvcore.c: test_async_reader_streaming(). So it won't be merged now. But I'd like to have it reviewed to see if I was doing things in the right direction.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3193