diff options
author | gab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-22 10:10:46 +0000 |
---|---|---|
committer | gab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-22 10:10:46 +0000 |
commit | 612d3bf582e66cc7a7f8a16bd39f30a20fb37b72 (patch) | |
tree | b2934d006cb0b0c99e4e90aceaf3c604db96d1f5 /chrome/browser/browser_process_platform_part_mac.mm | |
parent | dd98fbe822b8a5039ac5c2c293ae870080484519 (diff) | |
download | chromium_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.mm | 19 |
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(); +} |