| 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 02c4d295b25a89f1eec654f7e0dd81a6821fa0c2..af50b1aefb23c3b74277b7d3b4c1ce583a3f6c7d 100644
|
| --- a/chrome/browser/chromeos/arc/arc_service_launcher.cc
|
| +++ b/chrome/browser/chromeos/arc/arc_service_launcher.cc
|
| @@ -4,6 +4,8 @@
|
|
|
| #include "chrome/browser/chromeos/arc/arc_service_launcher.h"
|
|
|
| +#include <utility>
|
| +
|
| #include "base/logging.h"
|
| #include "base/memory/ptr_util.h"
|
| #include "chrome/browser/chromeos/arc/arc_auth_service.h"
|
| @@ -97,9 +99,13 @@ void ArcServiceLauncher::Initialize() {
|
| base::MakeUnique<ArcDownloadsWatcherService>(arc_bridge_service));
|
| arc_service_manager_->AddService(
|
| base::MakeUnique<ArcEnterpriseReportingService>(arc_bridge_service));
|
| - arc_service_manager_->AddService(base::MakeUnique<ArcIntentHelperBridge>(
|
| + auto intent_helper = base::MakeUnique<ArcIntentHelperBridge>(
|
| arc_bridge_service, arc_service_manager_->icon_loader(),
|
| - arc_service_manager_->activity_resolver()));
|
| + arc_service_manager_->activity_resolver());
|
| + // We don't have to remove observer since
|
| + // ArcServiceManager always outlives ArcIntentHelperBridge.
|
| + intent_helper->AddObserver(arc_service_manager_.get());
|
| + arc_service_manager_->AddService(std::move(intent_helper));
|
| arc_service_manager_->AddService(
|
| base::MakeUnique<ArcImeService>(arc_bridge_service));
|
| arc_service_manager_->AddService(
|
|
|