summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/chrome_content_browser_client.cc3
-rw-r--r--chrome/browser/ui/views/external_tab_container_win.cc4
2 files changed, 5 insertions, 2 deletions
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
index 20a4a83..c31883c 100644
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -1504,8 +1504,7 @@ AccessTokenStore* ChromeContentBrowserClient::CreateAccessTokenStore() {
}
bool ChromeContentBrowserClient::IsFastShutdownPossible() {
- const CommandLine& browser_command_line = *CommandLine::ForCurrentProcess();
- return !browser_command_line.HasSwitch(switches::kChromeFrame);
+ return true;
}
void ChromeContentBrowserClient::OverrideWebkitPrefs(
diff --git a/chrome/browser/ui/views/external_tab_container_win.cc b/chrome/browser/ui/views/external_tab_container_win.cc
index 42e67b2..070725c 100644
--- a/chrome/browser/ui/views/external_tab_container_win.cc
+++ b/chrome/browser/ui/views/external_tab_container_win.cc
@@ -266,6 +266,10 @@ void ExternalTabContainerWin::Uninitialize() {
if (web_contents_.get()) {
UnregisterRenderViewHost(web_contents_->GetRenderViewHost());
+ // Explicitly tell the RPH to shutdown, as doing so is the only thing that
+ // cleans up certain resources like infobars (crbug.com/148398).
+ web_contents_->GetRenderProcessHost()->FastShutdownIfPossible();
+
if (GetWidget()->GetRootView())
GetWidget()->GetRootView()->RemoveAllChildViews(true);