Skip to content

Commit 0e32c51

Browse files
committed
msvc: avoid debug assertion windows in Debug Mode
For regular debugging, it is pretty helpful when a debug assertion in a running application triggers a window that offers to start the debugger. However, when running the test suite, it is not so helpful, in particular when the debug assertions are then suppressed anyway because we disable the invalid parameter checking (via invalidcontinue.obj, see the comment in config.mak.uname about that object for more information). So let's simply disable that window in Debug Mode (it is already disabled in Release Mode). Signed-off-by: Johannes Schindelin <[email protected]>
1 parent 7cacfe5 commit 0e32c51

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

compat/mingw.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3051,6 +3051,10 @@ static void maybe_redirect_std_handles(void)
30513051

30523052
#if defined(_MSC_VER)
30533053

3054+
#ifdef _DEBUG
3055+
#include <crtdbg.h>
3056+
#endif
3057+
30543058
/*
30553059
* This routine sits between wmain() and "main" in git.exe.
30563060
* We receive UNICODE (wchar_t) values for argv and env.
@@ -3075,6 +3079,10 @@ int msc_startup(int argc, wchar_t **w_argv, wchar_t **w_env)
30753079
int maxlen;
30763080
int k, exit_status;
30773081

3082+
#ifdef _DEBUG
3083+
_CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
3084+
#endif
3085+
30783086
#ifdef USE_MSVC_CRTDBG
30793087
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
30803088
#endif

0 commit comments

Comments
 (0)