summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_process_platform_part_mac.mm
diff options
context:
space:
mode:
authorgab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-22 10:10:46 +0000
committergab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-22 10:10:46 +0000
commit612d3bf582e66cc7a7f8a16bd39f30a20fb37b72 (patch)
treeb2934d006cb0b0c99e4e90aceaf3c604db96d1f5 /chrome/browser/browser_process_platform_part_mac.mm
parentdd98fbe822b8a5039ac5c2c293ae870080484519 (diff)
downloadchromium_src-612d3bf582e66cc7a7f8a16bd39f30a20fb37b72.zip
chromium_src-612d3bf582e66cc7a7f8a16bd39f30a20fb37b72.tar.gz
chromium_src-612d3bf582e66cc7a7f8a16bd39f30a20fb37b72.tar.bz2
In WinAura, also kill the Metro viewer process in AttemptExit().
This results in an IPC channel error in the browser process which releases Ash's reference to g_browser_process, this is necessary for the browser process to terminate. This is a precursor to Ash browser_tests (otherwise when browser_tests try to exit Chrome by closing all browser windows, Ash stays up and the test never ends...!). BUG=235648, 232842, 179830 TEST= A) Local hack of Ash browser_tests works!! B) Exit Chrome from the wrench menu on the native Desktop while Ash is running and make sure that the viewer is killed (whether it was sleeping or not) which subsequently results in the browser process going away with a clean exit :). C) Exit Chrome from the wrench menu on the native Desktop when Ash is NOT running and make sure it closes fine (as it did before this CL). Review URL: https://chromiumcodereview.appspot.com/14576015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201476 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_process_platform_part_mac.mm')
-rw-r--r--chrome/browser/browser_process_platform_part_mac.mm19
1 files changed, 19 insertions, 0 deletions
diff --git a/chrome/browser/browser_process_platform_part_mac.mm b/chrome/browser/browser_process_platform_part_mac.mm
new file mode 100644
index 0000000..a279de6
--- /dev/null
+++ b/chrome/browser/browser_process_platform_part_mac.mm
@@ -0,0 +1,19 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/browser_process_platform_part_mac.h"
+#include "chrome/browser/chrome_browser_application_mac.h"
+
+BrowserProcessPlatformPart::BrowserProcessPlatformPart() {
+}
+
+BrowserProcessPlatformPart::~BrowserProcessPlatformPart() {
+}
+
+void BrowserProcessPlatformPart::AttemptExit() {
+ // On the Mac, the application continues to run once all windows are closed.
+ // Terminate will result in a CloseAllBrowsers() call, and once (and if)
+ // that is done, will cause the application to exit cleanly.
+ chrome_browser_application_mac::Terminate();
+}