Skip to content

Commit 00dd780

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 c716732 commit 00dd780

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

29962996
#if defined(_MSC_VER)
29972997

2998+
#ifdef _DEBUG
2999+
#include <crtdbg.h>
3000+
#endif
3001+
29983002
/*
29993003
* This routine sits between wmain() and "main" in git.exe.
30003004
* We receive UNICODE (wchar_t) values for argv and env.
@@ -3019,6 +3023,10 @@ int msc_startup(int argc, wchar_t **w_argv, wchar_t **w_env)
30193023
int maxlen;
30203024
int k, exit_status;
30213025

3026+
#ifdef _DEBUG
3027+
_CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
3028+
#endif
3029+
30223030
#ifdef USE_MSVC_CRTDBG
30233031
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
30243032
#endif

0 commit comments

Comments
 (0)