[go: up one dir, main page]

[Audio Focus] Fix crash on multiple abandon

We might call AbandonAudioFocus multiple times which
could cause a crash if there is no session.

BUG=971827

(cherry picked from commit 7fa2f944d4115778871f19a1c3197dcbf35d7982)

Change-Id: I71fd9c50314b38215326043f9e67109685d29c8c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1658769
Reviewed-by: Tommy Steimel <steimel@chromium.org>
Commit-Queue: Becca Hughes <beccahughes@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#668919}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1661807
Reviewed-by: Becca Hughes <beccahughes@chromium.org>
Cr-Commit-Position: refs/branch-heads/3809@{#373}
Cr-Branched-From: d82dec1a818f378c464ba307ddd9c92133eac355-refs/heads/master@{#665002}
diff --git a/services/media_session/audio_focus_manager.cc b/services/media_session/audio_focus_manager.cc
index 0e63a06..88a5c61 100644
--- a/services/media_session/audio_focus_manager.cc
+++ b/services/media_session/audio_focus_manager.cc
@@ -106,6 +106,8 @@
   bool was_top_most_session = audio_focus_stack_.back()->id() == id;
 
   auto row = RemoveFocusEntryIfPresent(id);
+  if (!row)
+    return;
 
   EnforceAudioFocus();
   MaybeUpdateActiveSession();