Chromium Code Reviews| Index: remoting/host/process_stats_sender.cc |
| diff --git a/remoting/host/process_stats_sender.cc b/remoting/host/process_stats_sender.cc |
| index a734877e51887d5c92d33ab8f1686f94ad2db2dd..2bfd4c2186f1045f4536585097d9d7af0b943cec 100644 |
| --- a/remoting/host/process_stats_sender.cc |
| +++ b/remoting/host/process_stats_sender.cc |
| @@ -13,16 +13,31 @@ |
| namespace remoting { |
| +namespace { |
| + |
| +std::vector<ProcessStatsAgent*> RemoveNullAgent( |
| + std::initializer_list<ProcessStatsAgent*> agents) { |
| + std::vector<ProcessStatsAgent*> result; |
| + for (auto* const agent : agents) { |
| + if (agent) { |
| + result.push_back(agent); |
| + } |
| + } |
| + return result; |
| +} |
| + |
| +} // namespace |
| + |
| ProcessStatsSender::ProcessStatsSender( |
| protocol::ProcessStatsStub* host_stats_stub, |
| base::TimeDelta interval, |
| std::initializer_list<ProcessStatsAgent*> agents) |
| : host_stats_stub_(host_stats_stub), |
| - agents_(agents), |
| + agents_(RemoveNullAgent(agents)), |
|
joedow
2017/05/03 21:41:01
I'm not sure about the approach here. It seems mu
Hzj_jie
2017/05/03 22:18:04
:)
|
| thread_checker_() { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| DCHECK(host_stats_stub_); |
| - DCHECK(!interval.is_zero()); |
| + DCHECK(interval > base::TimeDelta()); |
|
joedow
2017/05/03 21:41:01
The !is_zero() check seems more readable, why the
Hzj_jie
2017/05/03 22:18:04
Timer handles negative interval as 0:
https://cs.c
joedow
2017/05/08 16:25:41
I haven't experienced negative TimeDeltas being a
Hzj_jie
2017/05/08 18:16:19
Yes, and I also think silently accepting negative
|
| DCHECK(!agents_.empty()); |
| timer_.Start(FROM_HERE, interval, this, &ProcessStatsSender::ReportUsage); |