Support re-entrant calls to MessageQueueManager::Clear.
BUG=webrtc:7908
Review-Url: https://codereview.webrtc.org/2968753002
Cr-Commit-Position: refs/heads/master@{#18923}
diff --git a/webrtc/rtc_base/messagequeue.h b/webrtc/rtc_base/messagequeue.h
index d4057cd..0d0654e 100644
--- a/webrtc/rtc_base/messagequeue.h
+++ b/webrtc/rtc_base/messagequeue.h
@@ -70,9 +70,11 @@
// This list contains all live MessageQueues.
std::vector<MessageQueue*> message_queues_ GUARDED_BY(crit_);
- // Acquire this with DebugNonReentrantCritScope.
+ // Methods that don't modify the list of message queues may be called in a
+ // re-entrant fashion. "processing_" keeps track of the depth of re-entrant
+ // calls.
CriticalSection crit_;
- bool locked_ GUARDED_BY(crit_);
+ size_t processing_ GUARDED_BY(crit_);
};
// Derive from this for specialized data