summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser_process_impl.cc
diff options
context:
space:
mode:
authorerikwright@chromium.org <erikwright@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-14 04:48:48 +0000
committererikwright@chromium.org <erikwright@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-14 04:48:48 +0000
commitb4a269b550e36bfb68c6c8a975a33a341b39b716 (patch)
tree13a51d5a73777c46657552aba94bf8ad23647060 /chrome/browser/browser_process_impl.cc
parent11110e01671ed76089b724712babda4785fb1ab1 (diff)
downloadchromium_src-b4a269b550e36bfb68c6c8a975a33a341b39b716.zip
chromium_src-b4a269b550e36bfb68c6c8a975a33a341b39b716.tar.gz
chromium_src-b4a269b550e36bfb68c6c8a975a33a341b39b716.tar.bz2
A CL that caused writes to LocalState during startup was causing browser_test crashes because there would often be uncommitted LocalState changes during shutdown.
In that CL a hack was used to fix this - force commits immediately after those changes (which were expected to be one-time only). But the one-time changes were actually on every startup and potentially high volume so the many commits were causing significant performance regressions. This CL fixes the root of the problem. Before shutting down the worker threads, we should schedule a commit of LocalState. BUG=331273,330908,331766,332093,330795 Review URL: https://codereview.chromium.org/134483003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244647 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser_process_impl.cc')
-rw-r--r--chrome/browser/browser_process_impl.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
index a63eaca..1743c04 100644
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -296,6 +296,9 @@ void BrowserProcessImpl::StartTearDown() {
#if defined(ENABLE_WEBRTC)
webrtc_log_uploader_.reset();
#endif
+
+ if (local_state())
+ local_state()->CommitPendingWrite();
}
void BrowserProcessImpl::PostDestroyThreads() {