[TASKMGR] Report any memory leaks on exit (#5340)

Use the power of CRT debug to detect memory leaks.
- Define _CRTDBG_MAP_ALLOC and include <crtdbg.h> after <stdlib.h>.
- Call _CrtSetDbgFlag at prologue of wWinMain.
CORE-18014
This commit is contained in:
Katayama Hirofumi MZ 2023-06-15 14:27:06 +09:00 committed by GitHub
parent ec93c2340d
commit 2441e86963
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 0 deletions

View file

@ -9,6 +9,11 @@
#include <stdlib.h>
#include <stdarg.h>
#ifdef _DEBUG
#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>
#endif
#define WIN32_NO_STATUS
#include <windef.h>

View file

@ -116,6 +116,11 @@ int APIENTRY wWinMain(HINSTANCE hInstance,
TOKEN_PRIVILEGES tkp;
HANDLE hMutex;
#ifdef _DEBUG
// Report any memory leaks on exit
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
#endif
/* check wether we're already running or not */
hMutex = CreateMutexW(NULL, TRUE, L"taskmgrros");
if (hMutex && GetLastError() == ERROR_ALREADY_EXISTS)