Commit f10aacb1 authored by Becca Hughes's avatar Becca Hughes Committed by Commit Bot

[Media Session] Fix crash on abandon

Fix a race condition when notifying observers
that a session was abandoned.

BUG=971827

Change-Id: Ib0ec8188e7936cee2cd6676709dde408bc3ab3d8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1648951Reviewed-by: default avatarTommy Steimel <steimel@chromium.org>
Commit-Queue: Becca Hughes <beccahughes@chromium.org>
Cr-Commit-Position: refs/heads/master@{#667256}
parent 6c29b0c7
...@@ -111,8 +111,10 @@ void AudioFocusManager::AbandonAudioFocusInternal(RequestId id) { ...@@ -111,8 +111,10 @@ void AudioFocusManager::AbandonAudioFocusInternal(RequestId id) {
MaybeUpdateActiveSession(); MaybeUpdateActiveSession();
// Notify observers that we lost audio focus. // Notify observers that we lost audio focus.
observers_.ForAllPtrs([&row](mojom::AudioFocusObserver* observer) { mojom::AudioFocusRequestStatePtr session_state =
observer->OnFocusLost(row->ToAudioFocusRequestState()); row->ToAudioFocusRequestState();
observers_.ForAllPtrs([&session_state](mojom::AudioFocusObserver* observer) {
observer->OnFocusLost(session_state.Clone());
}); });
if (!was_top_most_session || audio_focus_stack_.empty()) if (!was_top_most_session || audio_focus_stack_.empty())
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment