| Index: chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelBase.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelBase.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelBase.java
|
| index 50dca1d9cd185fe31c01d853fa678077463bb8b5..2586a8cb6f69c3242da5113760fdaa2bc41666a9 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelBase.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelBase.java
|
| @@ -10,6 +10,7 @@ import org.chromium.base.TraceEvent;
|
| import org.chromium.chrome.browser.Tab;
|
| import org.chromium.chrome.browser.profiles.Profile;
|
| import org.chromium.chrome.browser.util.MathUtils;
|
| +import org.chromium.content_public.browser.WebContents;
|
|
|
| import java.util.ArrayList;
|
| import java.util.List;
|
| @@ -433,6 +434,13 @@ public abstract class TabModelBase implements TabModel {
|
|
|
| // TODO(dtrainor): Update the list of undoable tabs instead of committing it.
|
| if (!canUndo) commitAllTabClosures();
|
| +
|
| + // Cancel any media currently playing.
|
| + if (canUndo) {
|
| + WebContents webContents = tab.getWebContents();
|
| + if (webContents != null) webContents.releaseMediaPlayers();
|
| + }
|
| +
|
| mTabs.remove(tab);
|
|
|
| boolean nextIsIncognito = nextTab == null ? false : nextTab.isIncognito();
|
|
|