https://bugs.winehq.org/show_bug.cgi?id=50404
Bug ID: 50404 Summary: Sims 4 crashes on startup when using wine's builtin msvcrt. Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: msvcrt Assignee: wine-bugs@winehq.org Reporter: hibbsncc1701@gmail.com Distribution: ---
Created attachment 69026 --> https://bugs.winehq.org/attachment.cgi?id=69026 Console output with +seh+trace.
Sims 4 Version: 1.69.59.1020
Using wine's builtin msvcrt causes the game to exit before reaching the title screen. Attached seh log indicates that the game's python interpreter cannot initialize the sys standard streams.
Installing vcrun2013 via winetricks is a workaround.
https://bugs.winehq.org/show_bug.cgi?id=50404
Patrick Hibbs hibbsncc1701@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|unspecified |6.0-rc3
https://bugs.winehq.org/show_bug.cgi?id=50404
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
--- Comment #1 from winetest@luukku.com --- reminds me of bug 39689
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #2 from Patrick Hibbs hibbsncc1701@gmail.com --- (In reply to winetest from comment #1)
reminds me of bug 39689
Unfortunately, there is no crash dialog here. The game opens for a split second (a few frames of the opening sequence is played) and then exits to desktop immediately without any indication to the user as to why it did so.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #3 from Patrick Hibbs hibbsncc1701@gmail.com --- I should also point out that Sims 4 Version: 1.68.156.1020 also shows this bug now where it ran previously. So it seems like a wine regression. I'll see if I can get a bisect going.
https://bugs.winehq.org/show_bug.cgi?id=50404
Patrick Hibbs hibbsncc1701@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |cbca9f847f60773b4e7e5408f6a | |079f4896c5c1e
--- Comment #4 from Patrick Hibbs hibbsncc1701@gmail.com --- Bisect found the regression.
cbca9f847f60773b4e7e5408f6a079f4896c5c1e is the first bad commit commit cbca9f847f60773b4e7e5408f6a079f4896c5c1e Author: Jacek Caban jacek@codeweavers.com Date: Fri Nov 27 18:14:22 2020 +0100
kernelbase: Use FileFsDeviceInformation for console handles in GetFileType.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
dlls/kernel32/tests/console.c | 7 ++++++- dlls/kernelbase/file.c | 3 +-- 2 files changed, 7 insertions(+), 3 deletions(-)
https://bugs.winehq.org/show_bug.cgi?id=50404
Patrick Hibbs hibbsncc1701@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jacek@codeweavers.com
https://bugs.winehq.org/show_bug.cgi?id=50404
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Sims 4 crashes on startup |Sims 4 crashes on startup |when using wine's builtin |with builtin msvcrt |msvcrt. |(winetricks -q vcrun2013 is | |a workaround) Keywords| |regression
https://bugs.winehq.org/show_bug.cgi?id=50404
Patrick Hibbs hibbsncc1701@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Sims 4 crashes on startup |Sims 4 crashes on startup |with builtin msvcrt |with builtin msvcrt |(winetricks -q vcrun2013 is | |a workaround) |
--- Comment #5 from Patrick Hibbs hibbsncc1701@gmail.com --- The winetricks workaround only gets the game to the title screen. The second it attempts to load the main menu, the game will crash to desktop even with winetricks -q vcrun2013.
I was debating on whether or not to include this here or in another bug, and had set this bug up in anticipation of that, but because regression testing showed that reverting the bad commit above also fixes the second crash on the main menu, I'm including it here.
TL;DR: Until that bad commit is fixed, The Sims 4 won't run.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #6 from Jacek Caban jacek@codeweavers.com --- Please attach +seh,+msvcrt,+console,+relay logs.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #7 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69071 --> https://bugs.winehq.org/attachment.cgi?id=69071 Part 1 of +seh,+msvcrt,+console,+relay log.
Note: Split due to size.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #8 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69072 --> https://bugs.winehq.org/attachment.cgi?id=69072 Part 2 of +seh,+msvcrt,+console,+relay log.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #9 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69073 --> https://bugs.winehq.org/attachment.cgi?id=69073 Part 3 of +seh,+msvcrt,+console,+relay log.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #10 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69074 --> https://bugs.winehq.org/attachment.cgi?id=69074 Part 4 of +seh,+msvcrt,+console,+relay log.
This is the last part. Fair warning, this log decompresses to around 1.7GB.
https://bugs.winehq.org/show_bug.cgi?id=50404
Piotr Caban piotr.caban@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |piotr.caban@gmail.com
--- Comment #11 from Piotr Caban piotr.caban@gmail.com --- I'm not able to reproduce it with the same version of the game installed with Steam.
There's something wrong with the stderr handle in the log: 00fc:Call KERNEL32.GetStdHandle(fffffff4) ret=3b44b9dc 00fc:Ret KERNEL32.GetStdHandle() retval=00000010 ret=3b44b9dc 00fc:Call KERNEL32.GetFileType(00000010) ret=3b44b9f2 00fc:Ret KERNEL32.GetFileType() retval=00000001 ret=3b44b9f2 ... 00fc:Call KERNEL32.CreateFileW(0021ea58 L"D:\The Sims 4\Game\Bin\Default.ini",80000000,00000001,00000000,00000003,00000000,00000000) ret=1410eec0c 00fc:Ret KERNEL32.CreateFileW() retval=00000010 ret=1410eec0c
I don't see the call that closes the handle between GetStdHandle and CreateFileW. Adding server debug channel may show what is happening there. Could you please upload a new log with seh,msvcrt,console,relay,server debug channels?
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #12 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69104 --> https://bugs.winehq.org/attachment.cgi?id=69104 Part 1 of seh,msvcrt,console,relay,server log.
Here it is, again split due to log size. (1.8G uncompressed.)
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #13 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69105 --> https://bugs.winehq.org/attachment.cgi?id=69105 Part 2 of seh,msvcrt,console,relay,server log.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #14 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69106 --> https://bugs.winehq.org/attachment.cgi?id=69106 Part 3 of seh,msvcrt,console,relay,server log.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #15 from Patrick Hibbs hibbsncc1701@gmail.com --- Created attachment 69107 --> https://bugs.winehq.org/attachment.cgi?id=69107 Part 4 of seh,msvcrt,console,relay,server log.
This is the last one for the seh,msvcrt,console,relay,server log.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #16 from Piotr Caban piotr.caban@gmail.com --- The problems I'm seeing in the logs are not related to the commit identified by regression test. I also don't see why using native msvcr120 affects the bug.
Sims 4 process is started with CreateProcess call with bInheritHandles==FALSE and CREATE_NEW_CONSOLE flag. I don't know what's the content of STARTUPINFO from the log. I've tested it with gui application and zeroed startup info. After that, on Windows, GetStdHandle returns NULL for all standard handles. On wine the same values as in parent process are returned but the handles are invalid.
In your logs GetStdHandle(STD_ERROR_HANDLE) returns 0x10 (this is copied from parent process). 0x10 happens to be used as current directory handle. Because of that it passes msvcrt handle validation and is used when writing to stderr. Later it errors on all write operations.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #17 from Jacek Caban jacek@codeweavers.com --- It's likely fixed by: https://source.winehq.org/git/wine.git/commitdiff/7539dd607b5a9840d13849a066...
Please retest with current Wine version.
https://bugs.winehq.org/show_bug.cgi?id=50404
--- Comment #18 from Patrick Hibbs hibbsncc1701@gmail.com --- Game is running.
Sorry for taking so long to re-check.
https://bugs.winehq.org/show_bug.cgi?id=50404
Jacek Caban jacek@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |7539dd607b5a9840d13849a0668 | |d9e8982e20c8c Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #19 from Jacek Caban jacek@codeweavers.com --- Thanks for the report and testing.
https://bugs.winehq.org/show_bug.cgi?id=50404
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #20 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.13.
https://bugs.winehq.org/show_bug.cgi?id=50404
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |6.0.x
https://bugs.winehq.org/show_bug.cgi?id=50404
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|6.0.x |---
--- Comment #21 from Michael Stefaniuc mstefani@winehq.org --- Removing the 6.0.x milestone from bug fixes included in 6.0.3.