OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/browser_process_impl.h" | 5 #include "chrome/browser/browser_process_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <map> | 10 #include <map> |
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
298 | 298 |
299 // Need to clear the desktop notification balloons before the io_thread_ and | 299 // Need to clear the desktop notification balloons before the io_thread_ and |
300 // before the profiles, since if there are any still showing we will access | 300 // before the profiles, since if there are any still showing we will access |
301 // those things during teardown. | 301 // those things during teardown. |
302 notification_ui_manager_.reset(); | 302 notification_ui_manager_.reset(); |
303 | 303 |
304 // The SupervisedUserWhitelistInstaller observes the ProfileAttributesStorage, | 304 // The SupervisedUserWhitelistInstaller observes the ProfileAttributesStorage, |
305 // so it needs to be shut down before the ProfileManager. | 305 // so it needs to be shut down before the ProfileManager. |
306 supervised_user_whitelist_installer_.reset(); | 306 supervised_user_whitelist_installer_.reset(); |
307 | 307 |
308 #if !defined(OS_ANDROID) | |
309 // Debugger must be cleaned up before ProfileManager. | 308 // Debugger must be cleaned up before ProfileManager. |
310 remote_debugging_server_.reset(); | 309 remote_debugging_server_.reset(); |
311 devtools_auto_opener_.reset(); | 310 devtools_auto_opener_.reset(); |
312 #endif | 311 |
| 312 // ChromeDeviceClient must be shutdown when the FILE thread is still alive. |
| 313 device_client_->Shutdown(); |
313 | 314 |
314 // Need to clear profiles (download managers) before the io_thread_. | 315 // Need to clear profiles (download managers) before the io_thread_. |
315 { | 316 { |
316 TRACE_EVENT0("shutdown", | 317 TRACE_EVENT0("shutdown", |
317 "BrowserProcessImpl::StartTearDown:ProfileManager"); | 318 "BrowserProcessImpl::StartTearDown:ProfileManager"); |
318 // The desktop User Manager needs to be closed before the guest profile | 319 // The desktop User Manager needs to be closed before the guest profile |
319 // can be destroyed. | 320 // can be destroyed. |
320 UserManager::Hide(); | 321 UserManager::Hide(); |
321 profile_manager_.reset(); | 322 profile_manager_.reset(); |
322 } | 323 } |
(...skipping 1075 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1398 } | 1399 } |
1399 | 1400 |
1400 void BrowserProcessImpl::OnAutoupdateTimer() { | 1401 void BrowserProcessImpl::OnAutoupdateTimer() { |
1401 if (CanAutorestartForUpdate()) { | 1402 if (CanAutorestartForUpdate()) { |
1402 DLOG(WARNING) << "Detected update. Restarting browser."; | 1403 DLOG(WARNING) << "Detected update. Restarting browser."; |
1403 RestartBackgroundInstance(); | 1404 RestartBackgroundInstance(); |
1404 } | 1405 } |
1405 } | 1406 } |
1406 | 1407 |
1407 #endif // (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) | 1408 #endif // (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) |
OLD | NEW |