https://bugs.winehq.org/show_bug.cgi?id=13683
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sebastian@fds-team.de
--- Comment #53 from Sebastian Lackner sebastian@fds-team.de --- (In reply to Christopher Thielen from comment #52)
I can confirm the following patch resolves this bug.
It also causes Wine to correctly mimic Windows' behavior in my demo. I am not sure why the original author of user32.dll was making the check I removed. Is there a good way to determine who has solid knowledge of user32.dll to ensure I'm not removing behavior erroneously?
Its rather unlikely that someone immediately knows if this is correct or not. The code you refer to exists since at least 2002, and is probably even older. Most of the time the Windows behavior is not well-documented, so it is indeed possible, that the code was written based on some assumptions which are not true in practice - or also that this implementation was true on ancient versions of Windows but doesn't match modern operating systems.
To check if your changes are correct, you should try to add your test into the Wine testsuite (dlls/user32/tests), and run the existing tests (if you didn't do that already). Afterwards you should submit your suggested patch for further discussion and reviewing to the wine-patches mailing list (see http://wiki.winehq.org/SubmittingPatches ). Thanks for all your effort to fix this bug by the way! :)