Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(39)

Side by Side Diff: chrome/browser/chromeos/chrome_browser_main_chromeos.cc

Issue 558823002: Fix crash during shutdown (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/chromeos/chrome_browser_main_chromeos.h" 5 #include "chrome/browser/chromeos/chrome_browser_main_chromeos.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "ash/ash_switches.h" 10 #include "ash/ash_switches.h"
(...skipping 609 matching lines...) Expand 10 before | Expand all | Expand 10 after
620 void ChromeBrowserMainPartsChromeos::PostBrowserStart() { 620 void ChromeBrowserMainPartsChromeos::PostBrowserStart() {
621 // These are dependent on the ash::Shell singleton already having been 621 // These are dependent on the ash::Shell singleton already having been
622 // initialized. 622 // initialized.
623 #if !defined(USE_ATHENA) 623 #if !defined(USE_ATHENA)
624 // TODO(oshima): Remove ash dependency in PowerButtonObserver. 624 // TODO(oshima): Remove ash dependency in PowerButtonObserver.
625 // crbug.com/408832. 625 // crbug.com/408832.
626 power_button_observer_.reset(new PowerButtonObserver); 626 power_button_observer_.reset(new PowerButtonObserver);
627 #endif 627 #endif
628 data_promo_notification_.reset(new DataPromoNotification()); 628 data_promo_notification_.reset(new DataPromoNotification());
629 629
630 #if !defined(USE_ATHENA)
631 // TODO(oshima): Support accessibility on athena. crbug.com/408733.
630 keyboard_event_rewriters_.reset(new EventRewriterController()); 632 keyboard_event_rewriters_.reset(new EventRewriterController());
631 keyboard_event_rewriters_->AddEventRewriter( 633 keyboard_event_rewriters_->AddEventRewriter(
632 scoped_ptr<ui::EventRewriter>(new KeyboardDrivenEventRewriter())); 634 scoped_ptr<ui::EventRewriter>(new KeyboardDrivenEventRewriter()));
633 #if !defined(USE_ATHENA)
634 // TODO(oshima): Support accessibility on athena. crbug.com/408733.
635 keyboard_event_rewriters_->AddEventRewriter(scoped_ptr<ui::EventRewriter>( 635 keyboard_event_rewriters_->AddEventRewriter(scoped_ptr<ui::EventRewriter>(
636 new EventRewriter(ash::Shell::GetInstance()->sticky_keys_controller()))); 636 new EventRewriter(ash::Shell::GetInstance()->sticky_keys_controller())));
637 keyboard_event_rewriters_->Init(); 637 keyboard_event_rewriters_->Init();
638 #endif 638 #endif
639 639
640 ChromeBrowserMainPartsLinux::PostBrowserStart(); 640 ChromeBrowserMainPartsLinux::PostBrowserStart();
641 } 641 }
642 642
643 // Shut down services before the browser process, etc are destroyed. 643 // Shut down services before the browser process, etc are destroyed.
644 void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() { 644 void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() {
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
698 SystemKeyEventListener::Shutdown(); 698 SystemKeyEventListener::Shutdown();
699 #endif 699 #endif
700 700
701 imageburner::BurnManager::Shutdown(); 701 imageburner::BurnManager::Shutdown();
702 CrasAudioHandler::Shutdown(); 702 CrasAudioHandler::Shutdown();
703 703
704 // Detach D-Bus clients before DBusThreadManager is shut down. 704 // Detach D-Bus clients before DBusThreadManager is shut down.
705 power_button_observer_.reset(); 705 power_button_observer_.reset();
706 idle_action_warning_observer_.reset(); 706 idle_action_warning_observer_.reset();
707 707
708 #if !defined(USE_ATHENA)
708 MagnificationManager::Shutdown(); 709 MagnificationManager::Shutdown();
710 #endif
709 AccessibilityManager::Shutdown(); 711 AccessibilityManager::Shutdown();
710 712
711 media::SoundsManager::Shutdown(); 713 media::SoundsManager::Shutdown();
712 714
713 system::StatisticsProvider::GetInstance()->Shutdown(); 715 system::StatisticsProvider::GetInstance()->Shutdown();
714 716
715 // Let the UserManager and WallpaperManager unregister itself as an observer 717 // Let the UserManager and WallpaperManager unregister itself as an observer
716 // of the CrosSettings singleton before it is destroyed. This also ensures 718 // of the CrosSettings singleton before it is destroyed. This also ensures
717 // that the UserManager has no URLRequest pending (see 719 // that the UserManager has no URLRequest pending (see
718 // http://crbug.com/276659). 720 // http://crbug.com/276659).
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 // Destroy DBus services immediately after threads are stopped. 758 // Destroy DBus services immediately after threads are stopped.
757 dbus_services_.reset(); 759 dbus_services_.reset();
758 760
759 ChromeBrowserMainPartsLinux::PostDestroyThreads(); 761 ChromeBrowserMainPartsLinux::PostDestroyThreads();
760 762
761 // Destroy DeviceSettingsService after g_browser_process. 763 // Destroy DeviceSettingsService after g_browser_process.
762 DeviceSettingsService::Shutdown(); 764 DeviceSettingsService::Shutdown();
763 } 765 }
764 766
765 } // namespace chromeos 767 } // namespace chromeos
OLDNEW
« no previous file with comments | « athena/wm/window_manager_unittest.cc ('k') | chrome/browser/ui/views/athena/chrome_browser_main_extra_parts_athena.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698