summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_shutdown.h
Commit message (Collapse)AuthorAgeFilesLines
* Leak ResourceBundle during browser shutdown since we are exiting anyway. OS ↵bshe@chromium.org2012-06-141-5/+1
| | | | | | | | | | | | will reclaim the memory once the process gone. BUG=130768, 127266 TEST= Review URL: https://chromiumcodereview.appspot.com/10539091 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142194 0039d316-1c4b-4281-b951-d872f2087c98
* Have content/ create and destroy its own threads. (Re-land)joi@chromium.org2011-11-281-7/+12
| | | | | | | | | | | | | | | | | | | Change embedding API and embedders to allow for this. Push inheritance of base::Thread down to content::BrowserThreadImpl so that content::BrowserThread is just a namespace for API functions. This change temporarily disables chrome_frame_net_tests as agreed by the CF lead, see bug 105435. TBR=ben@chromium.org (IWYU change only) BUG=98716,104578,105435 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=111695 Reverted (problems on official bot): r111698 Review URL: http://codereview.chromium.org/8477004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111705 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 111695 - Have content/ create and destroy its own threads.joi@chromium.org2011-11-281-12/+7
| | | | | | | | | | | | | | | | | | | | | Reason: Problems on official builders. Change embedding API and embedders to allow for this. Push inheritance of base::Thread down to content::BrowserThreadImpl so that content::BrowserThread is just a namespace for API functions. This change temporarily disables chrome_frame_net_tests as agreed by the CF lead, see bug 105435. TBR=ben@chromium.org (IWYU change only) BUG=98716,104578,105435 Review URL: http://codereview.chromium.org/8477004 TBR=joi@chromium.org Review URL: http://codereview.chromium.org/8718012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111698 0039d316-1c4b-4281-b951-d872f2087c98
* Have content/ create and destroy its own threads.joi@chromium.org2011-11-281-7/+12
| | | | | | | | | | | | | | | | Change embedding API and embedders to allow for this. Push inheritance of base::Thread down to content::BrowserThreadImpl so that content::BrowserThread is just a namespace for API functions. This change temporarily disables chrome_frame_net_tests as agreed by the CF lead, see bug 105435. TBR=ben@chromium.org (IWYU change only) BUG=98716,104578,105435 Review URL: http://codereview.chromium.org/8477004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111695 0039d316-1c4b-4281-b951-d872f2087c98
* Chrome OS: Shutdown without blocking when SIGTERM is received.oshima@chromium.org2011-10-241-4/+8
| | | | | | | | | | | | | | | | | | | | | | | Made ShuttingDownWithoutCloseBrowsers a explicit flag. Use END_SESSION shutdown type if chrome recieves SIGTERM AND there are tabs that may block shutdown. Make sure APP_TERMINATING is sent only once. This fixes SIGABORT crash in two shutdown scenarios: 1) powering off when chrome has beforeunload handler, or downloads in progress. 2) singout from screen locker when chrome has beforeunload handler or downloads in progress. This is simple version of fix to merge to release branch. I'm working on another CL that will (hopefully) cleanup a bit more. BUG=chromium-os:20460 TEST=see bug for repro step Review URL: http://codereview.chromium.org/8262009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106988 0039d316-1c4b-4281-b951-d872f2087c98
* This is a second attempt of http://codereview.chromium.org/3175038davemoore@chromium.org2010-09-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It failed the Vista Perf UI tests. This is because those tests close the browser upon an error. And they always get an error when the session is closed in the middle of the test. The new changes are in chrome/browser/automation/testing_automation_provider.cc BUG=50006 TEST=Run chrome under nested window manager using Xephyr (see http://code.google.com/p/chromium/wiki/LayoutTestsLinux) use --enable-logging=stderr --log-level=0 kill xephyr examine log. You should see X IO Error detected followed (not necessarily immediately) by successfully saved /tmp/tx/Default/Preferences successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Default/Preferences along with no crash. BUG= TEST= Review URL: http://codereview.chromium.org/3364019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59269 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 59147 - Allow overriding of X error functionsdavemoore@chromium.org2010-09-101-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | BUG=50006 (and various other reports) TEST=Run chrome under nested window manager using Xephyr (see http://code.google.com/p/chromium/wiki/LayoutTestsLinux) use --enable-logging=stderr --log-level=0 kill xephyr examine log. You should see X IO Error detected followed (not necessarily immediately) by successfully saved /tmp/tx/Default/Preferences successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Default/Preferences along with no crash. There is a high ranking crash report on both linux and chromeos that happens whenever X sends an error to chrome. This change causes us to log and continue when we get a regular error from X. When we get an IO error, indicating X is gone, we attempt to shut down gracefully. Review URL: http://codereview.chromium.org/3175038 TBR=davemoore@chromium.org Review URL: http://codereview.chromium.org/3332019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59175 0039d316-1c4b-4281-b951-d872f2087c98
* Allow overriding of X error functionsdavemoore@chromium.org2010-09-101-0/+5
| | | | | | | | | | | | | | | | | | | | | | | BUG=50006 (and various other reports) TEST=Run chrome under nested window manager using Xephyr (see http://code.google.com/p/chromium/wiki/LayoutTestsLinux) use --enable-logging=stderr --log-level=0 kill xephyr examine log. You should see X IO Error detected followed (not necessarily immediately) by successfully saved /tmp/tx/Default/Preferences successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Local State successfully saved /tmp/tx/Default/Preferences along with no crash. There is a high ranking crash report on both linux and chromeos that happens whenever X sends an error to chrome. This change causes us to log and continue when we get a regular error from X. When we get an IO error, indicating X is gone, we attempt to shut down gracefully. Review URL: http://codereview.chromium.org/3175038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59147 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-261-0/+1
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Moved code that generates APP_TERMINATING notification into BrowserList so ↵atwilson@chromium.org2010-07-201-10/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | it can be used on all platforms. Updated observers (ExtensionProcessManager, BackgroundContents) to listen for APP_TERMINATING instead of listening for BROWSER_CLOSED on some platforms. APP_TERMINATING is now sent just before the main message loop exits rather than just after, but no code depends on this timing. Updated Mac code to always call BrowserList::CloseAllBrowsers() even if there are no open browsers, to ensure that APP_TERMINATING is always fired. Changed BackgroundContentsService to keep the browser process alive when there are BackgroundContents running and updated the unit tests. Renamed BrowserList::IsInPersistentMode() => WillShutdownWhenLastBrowserCloses() and AllBrowsersClosed() => AllBrowsersClosedAndAppExiting() to more precisely indicate their true functions. Exposed BrowserProcess::ModuleRefCount() so BrowserList can determine when the application is going to exit so the right notifications/callbacks can be generated. Updated background-auto-update-restart code to use new BrowserList APIs to determine whether the application is running "in the background". Added code to cancel shutdown on all plaforms if the user selects cancel in an onbeforeunload dialog. BUG=45275 TEST=RunInBackgroundTest (ui_test) Review URL: http://codereview.chromium.org/2866034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53092 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: reform our shutdown routine.viettrungluu@chromium.org2010-04-091-0/+16
| | | | | | | | | | | | | | | | Make shutdown be more like other platforms. Moreover: - Cancelling quit from an onbeforeunload dialog shouldn't mess up the browser. - Having quit cancelled due to a window pop up on the closure of another window shouldn't break the browser. [With this patch, it will result in the browser being in a quirky state in which the closure of the last browser window will cause a quit. But the browser won't be broken.] BUG=34384,37813,37927 TEST=See bugs. Review URL: http://codereview.chromium.org/1520006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44096 0039d316-1c4b-4281-b951-d872f2087c98
* Any time we are shutting down a tab, try to use fast shutdown.estade@chromium.org2009-10-021-0/+3
| | | | | | | | | BUG=http://crbug.com/5638 TEST=existing tab strip model tests, Fast shutdown ui tests, new tab strip model fast shutdown test Review URL: http://codereview.chromium.org/235050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27865 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGEdeanm@chromium.org2009-03-101-1/+0
| | | | | | | | | Normalize end of file newlines in chrome/. All files end in a single newline. Review URL: http://codereview.chromium.org/42015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11331 0039d316-1c4b-4281-b951-d872f2087c98
* Adds a variable indicating whether resources should be deleted onsky@google.com2009-01-281-0/+4
| | | | | | | | | | | | | shutdown. Normally it's true, but I'm going to set it to false for in process ui tests. I can't delete the ResourceBundle for these tests as many classes cache SkBitmaps from the resource bundle in statics. BUG=none TEST=none Review URL: http://codereview.chromium.org/19609 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8795 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-261-0/+67
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98