https://bugs.winehq.org/show_bug.cgi?id=27664
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Various Telltale games |Various Telltale games |crash on startup when a |crash on startup when a |joystick is plugged in |joystick is plugged in | |(application provides | |EnumDevice callback with | |wrong calling convention)
--- Comment #19 from Sebastian Lackner sebastian@fds-team.de --- Based on the previous comments, there are multiple issues mixed up in a single bug report. Lets make this one about the games which call EnumDevice with a non-standard calling convention. By looking at the assembler code, I have indeed confirmed that some applications do that. Tests also show that such wrong behaviour works fine Windows version < Win 8.
If there are problems with other games, which are not fixed by the staged patchset, please open a new bug report for it (and add me as CC). Also attach terminal output with a recent version of Wine, and provide a download link if a demo is available.
The reason why some people do not encounter the crash is just because different versions of gcc generate different code. If the calling function itself restores ESP at the end, its more unlikely that it crashes. This doesn't make the bug report invalid though.