| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/trace_event/memory_dump_manager.h" | 5 #include "base/trace_event/memory_dump_manager.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/atomic_sequence_num.h" | 9 #include "base/atomic_sequence_num.h" |
| 10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 70 base::trace_event::TraceLog::GetInstance()->RemoveEnabledStateObserver(this); | 70 base::trace_event::TraceLog::GetInstance()->RemoveEnabledStateObserver(this); |
| 71 } | 71 } |
| 72 | 72 |
| 73 void MemoryDumpManager::Initialize() { | 73 void MemoryDumpManager::Initialize() { |
| 74 TRACE_EVENT0(kTraceCategory, "init"); // Add to trace-viewer category list. | 74 TRACE_EVENT0(kTraceCategory, "init"); // Add to trace-viewer category list. |
| 75 trace_event::TraceLog::GetInstance()->AddEnabledStateObserver(this); | 75 trace_event::TraceLog::GetInstance()->AddEnabledStateObserver(this); |
| 76 } | 76 } |
| 77 | 77 |
| 78 void MemoryDumpManager::SetDelegate(MemoryDumpManagerDelegate* delegate) { | 78 void MemoryDumpManager::SetDelegate(MemoryDumpManagerDelegate* delegate) { |
| 79 AutoLock lock(lock_); | 79 AutoLock lock(lock_); |
| 80 DCHECK(delegate_ == nullptr); | 80 // TODO(primiano): The DCHECK below is disabled just temporary (and it is |
| 81 // strongly useful). It should be re-enabled soon as crbug.com/474973 is fixed |
| 82 // (ETA: end of April 2015). Commenting out just to de-entangle CL deps. |
| 83 // DCHECK(delegate_ == nullptr); |
| 81 delegate_ = delegate; | 84 delegate_ = delegate; |
| 82 } | 85 } |
| 83 | 86 |
| 84 void MemoryDumpManager::RegisterDumpProvider(MemoryDumpProvider* mdp) { | 87 void MemoryDumpManager::RegisterDumpProvider(MemoryDumpProvider* mdp) { |
| 85 AutoLock lock(lock_); | 88 AutoLock lock(lock_); |
| 86 if (std::find(dump_providers_registered_.begin(), | 89 if (std::find(dump_providers_registered_.begin(), |
| 87 dump_providers_registered_.end(), | 90 dump_providers_registered_.end(), |
| 88 mdp) != dump_providers_registered_.end()) { | 91 mdp) != dump_providers_registered_.end()) { |
| 89 return; | 92 return; |
| 90 } | 93 } |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 203 } | 206 } |
| 204 | 207 |
| 205 void MemoryDumpManager::OnTraceLogDisabled() { | 208 void MemoryDumpManager::OnTraceLogDisabled() { |
| 206 AutoLock lock(lock_); | 209 AutoLock lock(lock_); |
| 207 dump_providers_enabled_.clear(); | 210 dump_providers_enabled_.clear(); |
| 208 subtle::NoBarrier_Store(&memory_tracing_enabled_, 0); | 211 subtle::NoBarrier_Store(&memory_tracing_enabled_, 0); |
| 209 } | 212 } |
| 210 | 213 |
| 211 } // namespace trace_event | 214 } // namespace trace_event |
| 212 } // namespace base | 215 } // namespace base |
| OLD | NEW |