https://bugs.winehq.org/show_bug.cgi?id=52191
--- Comment #4 from Hendi hendi48@freenet.de --- (In reply to Nikolay Sivov from comment #1)
No, this looks accurate. The issue seems to be about having two functions variants, one in lfs_wrap.c and actual implementation in libmpg123.c. The wrapper does not check for null pointer, while implementation does.
It could a configuration issue, or a difference in win32 build. Maybe libmpg123 devs would be open to patching lfs_wrap.c accordingly.
Oh that makes total sense now, I didn't see the wrapper. I'll file a bug report with libmpg123, surely they'll be willing to fix that deviation in behavior.
(In reply to Zebediah Figura from comment #3)
FWIW, for reproduction purposes, it'd be nice to have the name of a specific application broken by this.
The application in question is an old version of MapleStory. Getting it to run is a bit involved, which is why I didn't say anything initially.
1. Go to https://msdl.xyz/pages/gms/setups and download GMSSetupv83.exe and install the game. 2. Download GMSv83.exe from https://mega.nz/file/5TR1hazB#aCWUpgiIJmSWKsjP0x0khKzY_tLcNOu7YDtTGPUcAz0 and place it in the game folder. 3. Run this in a shell to host a mock server (openbsd-netcat assumed): while true; do echo -e "\x0E\x00\x53\x00\x01\x00\x31\x12\x34\x56\x78\x12\x34\x56\x78\x08" | nc -l 127.0.0.1 8484; done 4. Launch GMSv83.exe. 5. Press ALT+Enter to switch to windowed mode. 6. Let it sit at the login screen, do not attempt to do anything else. It's a bit undeterministic when execution will reach the seek, on my test machine it usually happens after 2-10 minutes. 7. After crashing the game will write an exception trace in drive_c/windows/syswow64/msexcr.ini if you'd like to look at that.