http://bugs.winehq.org/show_bug.cgi?id=58583
Bug ID: 58583 Summary: msvcp140: Multiple modern applications using C++ Concurrency crash in CONCRT140.dll on startup Product: Wine Version: 10.12 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: blocker Priority: P2 Component: msvcp Assignee: wine-bugs@winehq.org Reporter: waser@waser.tech Distribution: ---
Created attachment 79107 --> http://bugs.winehq.org/attachment.cgi?id=79107 The game's own crash log from its `_appdata_ixray_/logs` directory.
This report details a consistent, immediate startup crash in `CONCRT140.dll` affecting modern S.T.A.L.K.E.R. engine forks. These engines are based on the open-source **Open X-Ray 1.6**, which itself works flawlessly under Wine.
The crash only appears in these newer, more advanced forks which leverage the MSVC concurrency runtime for performance. This strongly indicates the issue lies within Wine's implementation of these APIs, not a bug in the engines themselves. This is effectively a regression, as the baseline engine works while the newer, concurrency-enabled versions do not.
**Existing Related Bugs:** This issue appears to be a new, highly reproducible test case for known problems in Wine's concurrency support. We are filing this as a new report due to the unique test case and the specific failure point (constructor vs. destructor), but it is likely caused by the same underlying issues as: - **Bug 52899:** Notes that `CONCRT140.dll` requires `CreateEventExW` from `kernel32`. This is the most likely root cause. - **Bug 41749:** Shows a crash in the destructor for `Concurrency::details::_TaskCollection`. Our crash occurs in the *constructor* of this same object, demonstrating a different failing code path.
Our report provides two clear methods to reproduce this crash, including one that is fully free and requires no commercial software.
---
### **Primary Reproduction Steps (IX-Ray on S.T.A.L.K.E.R.: Call of Pripyat)**
*(Steps 1-5 as in previous draft)*
6. **Run the Game with Debug Logging:** Launch the game using its main executable with full debug channels enabled. ```bash WINEDEBUG=+all wine Stalker-COP.exe &> stalker_cop_crash_all.log WINEDEBUG=+seh,+loaddll wine Stalker-COP.exe &> stalker_cop_crash_seh.log ``` 7. **Result:** The process will crash immediately. The game's own crash log (in `_appdata_ixray_/logs`) and the attached Wine debug logs will show a fatal error in `CONCRT140.dll`.
---
### **Alternative Reproduction Steps (AOEngine on S.T.A.L.K.E.R. Anomaly)**
*(As in previous draft, but with the same logging commands)*
---
**Expected Behavior:** The game launcher should appear, and the game should launch to the main menu successfully, as it does on Windows and as the baseline Open X-Ray 1.6 engine does under Wine.
**Logs:** Three files will be attached for the primary reproduction case: 1. `stalker_cop_crash_seh.log`: A small log with `+seh,+loaddll` for quick initial review. 2. `stalker_cop_crash_all.log.bz2`: The complete `+all` debug log, compressed with bzip2 due to its large size. 3. `ixray-2025.08.10-02.37.21-waser.log`: The game's own crash log from its `_appdata_ixray_/logs` directory.
**References:** - **IX-Ray GitHub (Open Source Engine):** https://github.com/ixray-team/ixray-1.6-stcop - **GE-Proton Issue #197 (Full History):** https://github.com/GloriousEggroll/proton-ge-custom/issues/197
http://bugs.winehq.org/show_bug.cgi?id=58583
Danny Waser waser@waser.tech changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |INVALID Status|UNCONFIRMED |RESOLVED
--- Comment #1 from Danny Waser waser@waser.tech --- This one is invalid sorry. Dup of #58584
http://bugs.winehq.org/show_bug.cgi?id=58583
Danny Waser waser@waser.tech changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|INVALID |DUPLICATE
--- Comment #2 from Danny Waser waser@waser.tech --- Dup of #58584
*** This bug has been marked as a duplicate of bug 58584 ***