| 12345678910111213141516171819202122232425262728293031323334353637 | /* *  Created by Martin on 12/07/2017. * *  Distributed under the Boost Software License, Version 1.0. (See accompanying *  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */ #include "catch_leak_detector.h" #include "catch_interfaces_registry_hub.h"#ifdef CATCH_CONFIG_WINDOWS_CRTDBG#include <crtdbg.h>namespace Catch {    LeakDetector::LeakDetector() {        int flag = _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG);        flag |= _CRTDBG_LEAK_CHECK_DF;        flag |= _CRTDBG_ALLOC_MEM_DF;        _CrtSetDbgFlag(flag);        _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_FILE | _CRTDBG_MODE_DEBUG);        _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDERR);        // Change this to leaking allocation's number to break there        _CrtSetBreakAlloc(-1);    }}#else    Catch::LeakDetector::LeakDetector() {}#endifCatch::LeakDetector::~LeakDetector() {    Catch::cleanUp();}
 |