Chromium Code Reviews| Index: base/power_monitor/power_monitor.cc |
| diff --git a/base/power_monitor/power_monitor.cc b/base/power_monitor/power_monitor.cc |
| index 14dc4b517832785c07153abfed2bcc4a3a738940..87ba2a656732762b1b0d50987023dc440bac8c64 100644 |
| --- a/base/power_monitor/power_monitor.cc |
| +++ b/base/power_monitor/power_monitor.cc |
| @@ -3,6 +3,7 @@ |
| // found in the LICENSE file. |
| #include "base/power_monitor/power_monitor.h" |
| +#include "base/logging.h" |
| #include "base/power_monitor/power_monitor_source.h" |
| namespace base { |
| @@ -27,11 +28,16 @@ PowerMonitor* PowerMonitor::Get() { |
| } |
| void PowerMonitor::AddObserver(PowerObserver* obs) { |
| + CHECK (obs->power_monitor_thread_ == 0); |
|
scottmg
2014/08/25 21:43:16
nit; no space before (
|
| + obs->power_monitor_thread_ = base::PlatformThread::CurrentId(); |
| observers_->AddObserver(obs); |
| } |
| void PowerMonitor::RemoveObserver(PowerObserver* obs) { |
| + // PowerObservers must be removed on the same thread on which they were added. |
| + CHECK (base::PlatformThread::CurrentId() == obs->power_monitor_thread_); |
|
scottmg
2014/08/25 21:43:16
no space, and CHECK_EQ instead
|
| observers_->RemoveObserver(obs); |
| + obs->power_monitor_thread_ = 0; |
| } |
| PowerMonitorSource* PowerMonitor::Source() { |