Skip to content

Commit 1307b84

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 4fb1780 commit 1307b84

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
@@ -3034,6 +3034,10 @@ static void maybe_redirect_std_handles(void)
30343034

30353035
#if defined(_MSC_VER)
30363036

3037+
#ifdef _DEBUG
3038+
#include <crtdbg.h>
3039+
#endif
3040+
30373041
/*
30383042
* This routine sits between wmain() and "main" in git.exe.
30393043
* We receive UNICODE (wchar_t) values for argv and env.
@@ -3058,6 +3062,10 @@ int msc_startup(int argc, wchar_t **w_argv, wchar_t **w_env)
30583062
int maxlen;
30593063
int k, exit_status;
30603064

3065+
#ifdef _DEBUG
3066+
_CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
3067+
#endif
3068+
30613069
#ifdef USE_MSVC_CRTDBG
30623070
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
30633071
#endif

0 commit comments

Comments
 (0)