From: Santino Mazza <smazza@codeweavers.com> If assert is called when error mode is set to _OUT_TO_STDERR and abort behavior is set to _WRITE_ABORT_MSG the abort message box is still showed in Windows. Some applications do this and the abort exception is still raised in the debugger on Windows. --- dlls/msvcrt/exit.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/msvcrt/exit.c b/dlls/msvcrt/exit.c index 0ee612a11a8..4f3a4816753 100644 --- a/dlls/msvcrt/exit.c +++ b/dlls/msvcrt/exit.c @@ -305,12 +305,12 @@ void DECLSPEC_NORETURN CDECL _wassert(const wchar_t* str, const wchar_t* file, u wchar_t text[2048]; _snwprintf(text, sizeof(text), L"File: %ls\nLine: %d\n\nExpression: \"%ls\"", file, line, str); DoMessageBoxW(L"Assertion failed!", text); + raise(SIGABRT); + _exit(3); } - else - fwprintf(stderr, L"Assertion failed: %ls, file %ls, line %d\n\n", str, file, line); - raise(SIGABRT); - _exit(3); + fwprintf(stderr, L"Assertion failed: %ls, file %ls, line %d\n\n", str, file, line); + abort(); } /********************************************************************* -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10250