http://bugs.winehq.org/show_bug.cgi?id=10610
--- Comment #11 from Stefan Dösinger stefandoesinger@gmx.at 2007-12-03 10:41:37 --- The fix is correct from what it does. Something like that can be sent to wine-patches, just removing the entire block rather than commenting it out. It will not cause any direct breakage in other games, but it can have a small effect on performance(which is is unmeasurable most likely).
The idea behind the check for this flag is that everywhere it is checked, there MUST be a properly set up context already, unless the calling thread changed. Direct3D apps are supposed to set the MULTITHREADED flag when they are going to call d3d methods from different threads. Many games however do not do that. Consequently, they have to expect breakage on Windows as well.
The difference between Windows and Wine in this area is that the way the direct3d driver works, the only possible negative effect of not setting the flags are race conditions. Race conditions are nasty, but the games can be lucky, and usually they are lucky all the time. On OpenGL, the same situation causes a crash. So the game is lucky 0% of the time.