зеркало из https://github.com/microsoft/git.git
msvc: add a compile-time flag to allow detailed heap debugging
MS Visual C comes with a few neat features we can use to analyze the heap consumption (i.e. leaks, max memory, etc). With this patch, we introduce support via the build-time flag `USE_MSVC_CRTDBG`. Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
dce7d29551
Коммит
556702f86c
|
@ -2411,6 +2411,12 @@ int wmain(int argc, const wchar_t **wargv)
|
|||
|
||||
trace2_initialize_clock();
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifdef USE_MSVC_CRTDBG
|
||||
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
maybe_redirect_std_handles();
|
||||
|
||||
/* determine size of argv and environ conversion buffer */
|
||||
|
|
|
@ -448,6 +448,10 @@ else
|
|||
endif
|
||||
BASIC_CFLAGS += $(sdk_libs) $(msvc_libs)
|
||||
|
||||
ifneq ($(USE_MSVC_CRTDBG),)
|
||||
# Optionally enable memory leak reporting.
|
||||
BASIC_CFLAGS += -DUSE_MSVC_CRTDBG
|
||||
endif
|
||||
BASIC_CFLAGS += -DPROTECT_NTFS_DEFAULT=1
|
||||
# Always give "-Zi" to the compiler and "-debug" to linker (even in
|
||||
# release mode) to force a PDB to be generated (like RelWithDebInfo).
|
||||
|
|
|
@ -1,6 +1,15 @@
|
|||
#ifndef GIT_COMPAT_UTIL_H
|
||||
#define GIT_COMPAT_UTIL_H
|
||||
|
||||
#ifdef USE_MSVC_CRTDBG
|
||||
/*
|
||||
* For these to work they must appear very early in each
|
||||
* file -- before most of the standard header files.
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include <crtdbg.h>
|
||||
#endif
|
||||
|
||||
#define _FILE_OFFSET_BITS 64
|
||||
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче