Chromium Code Reviews| Index: sync/internal_api/debug_info_event_listener.cc |
| diff --git a/sync/internal_api/debug_info_event_listener.cc b/sync/internal_api/debug_info_event_listener.cc |
| index 7875ed92b48db3f3e5e561c1f7add3e19abf9ea0..f6d9976b62394591d02c8da671e784419fb3624d 100644 |
| --- a/sync/internal_api/debug_info_event_listener.cc |
| +++ b/sync/internal_api/debug_info_event_listener.cc |
| @@ -144,22 +144,29 @@ void DebugInfoEventListener::OnIncomingNotification( |
| AddEventToQueue(event_info); |
| } |
| -void DebugInfoEventListener::GetAndClearDebugInfo( |
| +void DebugInfoEventListener::GetDebugInfo( |
|
rlarocque
2013/11/20 01:25:18
Does this not fit on one line?
maniscalco
2013/11/20 01:50:02
Oops, it does fit. Done.
|
| sync_pb::DebugInfo* debug_info) { |
| DCHECK(thread_checker_.CalledOnValidThread()); |
| DCHECK_LE(events_.size(), kMaxEntries); |
| - while (!events_.empty()) { |
| + |
| + for (DebugEventInfoQueue::const_iterator iter = events_.begin(); |
| + iter != events_.end(); |
| + ++iter) { |
| sync_pb::DebugEventInfo* event_info = debug_info->add_events(); |
| - const sync_pb::DebugEventInfo& debug_event_info = events_.front(); |
| - event_info->CopyFrom(debug_event_info); |
| - events_.pop(); |
| + event_info->CopyFrom(*iter); |
| } |
| debug_info->set_events_dropped(events_dropped_); |
| debug_info->set_cryptographer_ready(cryptographer_ready_); |
| debug_info->set_cryptographer_has_pending_keys( |
| cryptographer_has_pending_keys_); |
| +} |
| + |
| +void DebugInfoEventListener::ClearDebugInfo() { |
| + DCHECK(thread_checker_.CalledOnValidThread()); |
| + DCHECK_LE(events_.size(), kMaxEntries); |
| + events_.clear(); |
| events_dropped_ = false; |
| } |
| @@ -255,10 +262,10 @@ void DebugInfoEventListener::AddEventToQueue( |
| DVLOG(1) << "DebugInfoEventListener::AddEventToQueue Dropping an old event " |
| << "because of full queue"; |
| - events_.pop(); |
| + events_.pop_front(); |
| events_dropped_ = true; |
| } |
| - events_.push(event_info); |
| + events_.push_back(event_info); |
| } |
| } // namespace syncer |