Chromium Code Reviews| Index: chrome/browser/chromeos/arc/arc_service_launcher.cc |
| diff --git a/chrome/browser/chromeos/arc/arc_service_launcher.cc b/chrome/browser/chromeos/arc/arc_service_launcher.cc |
| index 599eee60b0619d3d14121d99bda80c245e6300d9..f7a330eb9d43b05c4c55b744cdd80fc0011842a1 100644 |
| --- a/chrome/browser/chromeos/arc/arc_service_launcher.cc |
| +++ b/chrome/browser/chromeos/arc/arc_service_launcher.cc |
| @@ -98,8 +98,14 @@ void ArcServiceLauncher::Initialize() { |
| base::MakeUnique<ArcBootPhaseMonitorBridge>(arc_bridge_service)); |
| arc_service_manager_->AddService( |
| base::MakeUnique<ArcClipboardBridge>(arc_bridge_service)); |
| - arc_service_manager_->AddService( |
| - base::MakeUnique<ArcFileSystemService>(arc_bridge_service)); |
| + auto file_system_service = |
| + base::MakeUnique<ArcFileSystemService>(arc_bridge_service); |
| + // We don't have to call ArcFileSystemService::RemoveObserver() in |
| + // ~ArcServiceManager() since the observer in ArcServiceManager always |
| + // outlives the ArcFileSystemService object. |
| + file_system_service->AddObserver( |
|
Luis Héctor Chávez
2017/01/10 05:49:04
This looks kind of weird. Can we either:
a) Prefe
|
| + arc_service_manager_->file_system_observer()); |
| + arc_service_manager_->AddService(std::move(file_system_service)); |
| arc_service_manager_->AddService(base::MakeUnique<ArcCrashCollectorBridge>( |
| arc_bridge_service, arc_service_manager_->blocking_task_runner())); |
| arc_service_manager_->AddService( |