@@ -87,7 +87,7 @@ bool Broadcaster::BroadcasterImpl::HasListeners(uint32_t event_mask) {
8787}
8888
8989void Broadcaster::BroadcasterImpl::Clear () {
90- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
90+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
9191
9292 // Make sure the listener forgets about this broadcaster. We do this in the
9393 // broadcaster in case the broadcaster object initiates the removal.
@@ -137,7 +137,7 @@ Broadcaster::BroadcasterImpl::AddListener(const lldb::ListenerSP &listener_sp,
137137 if (!listener_sp)
138138 return 0 ;
139139
140- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
140+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
141141
142142 // See if we already have this listener, and if so, update its mask
143143
@@ -171,7 +171,7 @@ Broadcaster::BroadcasterImpl::AddListener(const lldb::ListenerSP &listener_sp,
171171}
172172
173173bool Broadcaster::BroadcasterImpl::EventTypeHasListeners (uint32_t event_type) {
174- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
174+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
175175
176176 if (!m_hijacking_listeners.empty () && event_type & m_hijacking_masks.back ())
177177 return true ;
@@ -195,7 +195,7 @@ bool Broadcaster::BroadcasterImpl::RemoveListener(
195195 return true ;
196196 }
197197
198- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
198+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
199199 for (auto it = m_listeners.begin (); it != m_listeners.end ();) {
200200 lldb::ListenerSP curr_listener_sp (it->first .lock ());
201201
@@ -243,7 +243,7 @@ void Broadcaster::BroadcasterImpl::PrivateBroadcastEvent(EventSP &event_sp,
243243
244244 const uint32_t event_type = event_sp->GetType ();
245245
246- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
246+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
247247
248248 ListenerSP hijacking_listener_sp;
249249
@@ -327,7 +327,7 @@ void Broadcaster::BroadcasterImpl::SetPrimaryListener(lldb::ListenerSP
327327
328328bool Broadcaster::BroadcasterImpl::HijackBroadcaster (
329329 const lldb::ListenerSP &listener_sp, uint32_t event_mask) {
330- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
330+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
331331
332332 Log *log = GetLog (LLDBLog::Events);
333333 LLDB_LOG (
@@ -341,7 +341,7 @@ bool Broadcaster::BroadcasterImpl::HijackBroadcaster(
341341}
342342
343343bool Broadcaster::BroadcasterImpl::IsHijackedForEvent (uint32_t event_mask) {
344- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
344+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
345345
346346 if (!m_hijacking_listeners.empty ())
347347 return (event_mask & m_hijacking_masks.back ()) != 0 ;
@@ -356,7 +356,7 @@ const char *Broadcaster::BroadcasterImpl::GetHijackingListenerName() {
356356}
357357
358358void Broadcaster::BroadcasterImpl::RestoreBroadcaster () {
359- std::lock_guard<std::recursive_mutex > guard (m_listeners_mutex);
359+ std::lock_guard<std::mutex > guard (m_listeners_mutex);
360360
361361 if (!m_hijacking_listeners.empty ()) {
362362 ListenerSP listener_sp = m_hijacking_listeners.back ();
@@ -391,10 +391,8 @@ lldb::BroadcasterManagerSP BroadcasterManager::MakeBroadcasterManager() {
391391 return lldb::BroadcasterManagerSP (new BroadcasterManager ());
392392}
393393
394- uint32_t BroadcasterManager::RegisterListenerForEvents (
394+ uint32_t BroadcasterManager::RegisterListenerForEventsNoLock (
395395 const lldb::ListenerSP &listener_sp, const BroadcastEventSpec &event_spec) {
396- std::lock_guard<std::recursive_mutex> guard (m_manager_mutex);
397-
398396 collection::iterator iter = m_event_map.begin (), end_iter = m_event_map.end ();
399397 uint32_t available_bits = event_spec.GetEventBits ();
400398
@@ -419,9 +417,8 @@ uint32_t BroadcasterManager::RegisterListenerForEvents(
419417 return available_bits;
420418}
421419
422- bool BroadcasterManager::UnregisterListenerForEvents (
420+ bool BroadcasterManager::UnregisterListenerForEventsNoLock (
423421 const lldb::ListenerSP &listener_sp, const BroadcastEventSpec &event_spec) {
424- std::lock_guard<std::recursive_mutex> guard (m_manager_mutex);
425422 bool removed_some = false ;
426423
427424 if (m_listeners.erase (listener_sp) == 0 )
@@ -464,7 +461,7 @@ bool BroadcasterManager::UnregisterListenerForEvents(
464461
465462ListenerSP BroadcasterManager::GetListenerForEventSpec (
466463 const BroadcastEventSpec &event_spec) const {
467- std::lock_guard<std::recursive_mutex > guard (m_manager_mutex);
464+ std::lock_guard<std::mutex > guard (m_manager_mutex);
468465
469466 auto event_spec_matches =
470467 [&event_spec](const event_listener_key &input) -> bool {
@@ -479,7 +476,7 @@ ListenerSP BroadcasterManager::GetListenerForEventSpec(
479476}
480477
481478void BroadcasterManager::RemoveListener (Listener *listener) {
482- std::lock_guard<std::recursive_mutex > guard (m_manager_mutex);
479+ std::lock_guard<std::mutex > guard (m_manager_mutex);
483480 auto listeners_predicate =
484481 [&listener](const lldb::ListenerSP &input) -> bool {
485482 return input.get () == listener;
@@ -504,7 +501,7 @@ void BroadcasterManager::RemoveListener(Listener *listener) {
504501}
505502
506503void BroadcasterManager::RemoveListener (const lldb::ListenerSP &listener_sp) {
507- std::lock_guard<std::recursive_mutex > guard (m_manager_mutex);
504+ std::lock_guard<std::mutex > guard (m_manager_mutex);
508505
509506 auto listener_matches =
510507 [&listener_sp](const event_listener_key &input) -> bool {
@@ -526,7 +523,7 @@ void BroadcasterManager::RemoveListener(const lldb::ListenerSP &listener_sp) {
526523
527524void BroadcasterManager::SignUpListenersForBroadcaster (
528525 Broadcaster &broadcaster) {
529- std::lock_guard<std::recursive_mutex > guard (m_manager_mutex);
526+ std::lock_guard<std::mutex > guard (m_manager_mutex);
530527
531528 collection::iterator iter = m_event_map.begin (), end_iter = m_event_map.end ();
532529
@@ -544,7 +541,7 @@ void BroadcasterManager::SignUpListenersForBroadcaster(
544541}
545542
546543void BroadcasterManager::Clear () {
547- std::lock_guard<std::recursive_mutex > guard (m_manager_mutex);
544+ std::lock_guard<std::mutex > guard (m_manager_mutex);
548545
549546 for (auto &listener : m_listeners)
550547 listener->BroadcasterManagerWillDestruct (this ->shared_from_this ());
0 commit comments