Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "base/memory_debug.h"
7 #ifdef PURIFY
8 // this #define is used to prevent people from directly using pure.h
9 // instead of memory_debug.h
10 #define PURIFY_PRIVATE_INCLUDE
11 #include "base/third_party/purify/pure.h"
12 #endif
14 namespace base {
16 bool MemoryDebug::memory_in_use_ = false;
18 void MemoryDebug::SetMemoryInUseEnabled(bool enabled) {
19 memory_in_use_ = enabled;
20 }
22 void MemoryDebug::DumpAllMemoryInUse() {
23 #ifdef PURIFY
24 if (memory_in_use_)
25 PurifyAllInuse();
26 #endif
27 }
29 void MemoryDebug::DumpNewMemoryInUse() {
30 #ifdef PURIFY
31 if (memory_in_use_)
32 PurifyNewInuse();
33 #endif
34 }
36 void MemoryDebug::DumpAllLeaks() {
37 #ifdef PURIFY
38 PurifyAllLeaks();
39 #endif
40 }
42 void MemoryDebug::DumpNewLeaks() {
43 #ifdef PURIFY
44 PurifyNewLeaks();
45 #endif
46 }
48 void MemoryDebug::MarkAsInitialized(void* addr, size_t size) {
49 #ifdef PURIFY
50 PurifyMarkAsInitialized(addr, size);
51 #endif
52 }
54 } // namespace base