Index: chrome/browser/metrics/thread_watcher.cc |
diff --git a/chrome/browser/metrics/thread_watcher.cc b/chrome/browser/metrics/thread_watcher.cc |
index ca5395e2b26f9dd8d8bd80581d1d941f3a86b39b..f1904b922a10855b6322c664af1fae522f10ee11 100644 |
--- a/chrome/browser/metrics/thread_watcher.cc |
+++ b/chrome/browser/metrics/thread_watcher.cc |
@@ -657,6 +657,12 @@ void ThreadWatcherList::InitializeAndStartWatching( |
const CrashOnHangThreadMap& crash_on_hang_threads) { |
DCHECK(WatchDogThread::CurrentlyOnWatchDogThread()); |
+ // Disarm the startup timebomb, even if stop has been called. |
+ BrowserThread::PostTask( |
+ BrowserThread::UI, |
+ FROM_HERE, |
+ base::Bind(&StartupTimeBomb::DisarmStartupTimeBomb)); |
+ |
// This method is deferred in relationship to its StopWatchingAll() |
// counterpart. If a previous initialization has already happened, or if |
// stop has been called, there's nothing left to do here. |
@@ -666,11 +672,6 @@ void ThreadWatcherList::InitializeAndStartWatching( |
ThreadWatcherList* thread_watcher_list = new ThreadWatcherList(); |
CHECK(thread_watcher_list); |
- BrowserThread::PostTask( |
- BrowserThread::UI, |
- FROM_HERE, |
- base::Bind(&StartupTimeBomb::DisarmStartupTimeBomb)); |
- |
const base::TimeDelta kSleepTime = |
base::TimeDelta::FromSeconds(kSleepSeconds); |
const base::TimeDelta kUnresponsiveTime = |