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

Unified Diff: services/service_manager/public/cpp/lib/service_context.cc

Issue 2456493003: Add frame-specific InterfaceProviderSpec. (Closed)
Patch Set: . Created 4 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: services/service_manager/public/cpp/lib/service_context.cc
diff --git a/services/service_manager/public/cpp/lib/service_context.cc b/services/service_manager/public/cpp/lib/service_context.cc
index c015df5c3cdabffff52dceb9975355587244a22f..a3b8f7d614aba2d3ff51c712512f02d9cebf3184 100644
--- a/services/service_manager/public/cpp/lib/service_context.cc
+++ b/services/service_manager/public/cpp/lib/service_context.cc
@@ -63,20 +63,15 @@ void ServiceContext::OnStart(const ServiceInfo& info,
void ServiceContext::OnConnect(
const ServiceInfo& source_info,
mojom::InterfaceProviderRequest interfaces) {
- auto target_it = local_info_.interface_provider_specs.find(
- mojom::kServiceManager_ConnectorSpec);
- InterfaceProviderSpec target_spec;
- if (target_it != local_info_.interface_provider_specs.end())
- target_spec = target_it->second;
- auto source_it = source_info.interface_provider_specs.find(
- mojom::kServiceManager_ConnectorSpec);
- InterfaceProviderSpec source_spec;
- if (source_it != source_info.interface_provider_specs.end())
- source_spec = source_it->second;
-
- auto registry = base::MakeUnique<InterfaceRegistry>(local_info_.identity,
- target_spec);
- registry->Bind(std::move(interfaces), source_info.identity, source_spec);
+ InterfaceProviderSpec source_spec, target_spec;
+ GetInterfaceProviderSpec(mojom::kServiceManager_ConnectorSpec,
+ local_info_.interface_provider_specs, &target_spec);
+ GetInterfaceProviderSpec(mojom::kServiceManager_ConnectorSpec,
+ source_info.interface_provider_specs, &source_spec);
+ auto registry =
+ base::MakeUnique<InterfaceRegistry>(mojom::kServiceManager_ConnectorSpec);
+ registry->Bind(std::move(interfaces), local_info_.identity, target_spec,
+ source_info.identity, source_spec);
if (!service_->OnConnect(source_info, registry.get()))
return;

Powered by Google App Engine
This is Rietveld 408576698