summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core/Broadcaster.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Core/Broadcaster.cpp')
-rw-r--r--lldb/source/Core/Broadcaster.cpp30
1 files changed, 16 insertions, 14 deletions
diff --git a/lldb/source/Core/Broadcaster.cpp b/lldb/source/Core/Broadcaster.cpp
index fe1b7164d5d..1d264a6c675 100644
--- a/lldb/source/Core/Broadcaster.cpp
+++ b/lldb/source/Core/Broadcaster.cpp
@@ -40,22 +40,24 @@ Broadcaster::~Broadcaster()
if (log)
log->Printf ("%p Broadcaster::~Broadcaster(\"%s\")", this, m_broadcaster_name.AsCString());
- // Scope for "listeners_locker"
- {
- Mutex::Locker listeners_locker(m_listeners_mutex);
-
- // Make sure the listener forgets about this broadcaster. We do
- // this in the broadcaster in case the broadcaster object initiates
- // the removal.
-
- collection::iterator pos, end = m_listeners.end();
- for (pos = m_listeners.begin(); pos != end; ++pos)
- pos->first->BroadcasterWillDestruct (this);
-
- m_listeners.clear();
- }
+ Clear();
}
+void
+Broadcaster::Clear()
+{
+ Mutex::Locker listeners_locker(m_listeners_mutex);
+
+ // Make sure the listener forgets about this broadcaster. We do
+ // this in the broadcaster in case the broadcaster object initiates
+ // the removal.
+
+ collection::iterator pos, end = m_listeners.end();
+ for (pos = m_listeners.begin(); pos != end; ++pos)
+ pos->first->BroadcasterWillDestruct (this);
+
+ m_listeners.clear();
+}
const ConstString &
Broadcaster::GetBroadcasterName ()
{
OpenPOWER on IntegriCloud