Index: chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
index aa47784648e325adef2e14e9cb5ea31effa59f78..1215cb4d9b1fd9bd52ad98771913b47f4305b2e8 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/document/ChromeLauncherActivity.java |
@@ -676,7 +676,8 @@ public class ChromeLauncherActivity extends Activity |
// re-delivered when a Chrome Activity is restarted. |
boolean isWebContentsPending = false; |
int tabId = ActivityDelegate.getTabIdFromIntent(intent); |
- AsyncTabParamsManager.add(tabId, asyncParams); |
+ if (!AsyncTabParamsManager.peek(tabId)) AsyncTabParamsManager.add(tabId, asyncParams); |
+ |
isWebContentsPending = asyncParams.getWebContents() != null; |
Bundle options = null; |
@@ -700,6 +701,9 @@ public class ChromeLauncherActivity extends Activity |
Log.e(TAG, "Failed to launch DocumentActivity because Intent was too large"); |
AsyncTabParamsManager.remove(tabId); |
if (isWebContentsPending) asyncParams.getWebContents().destroy(); |
+ if (asyncParams.getTabToReparent() != null) { |
+ asyncParams.getTabToReparent().destroy(); |
Ted C
2016/02/25 20:05:22
we might want to consider a destroy on the async p
Yusuf
2016/02/25 23:05:00
Done.
|
+ } |
return false; |
} |
throw exception; |