summaryrefslogtreecommitdiffstats
path: root/mojo/shell/dbus_service_loader_linux.cc
diff options
context:
space:
mode:
Diffstat (limited to 'mojo/shell/dbus_service_loader_linux.cc')
-rw-r--r--mojo/shell/dbus_service_loader_linux.cc12
1 files changed, 9 insertions, 3 deletions
diff --git a/mojo/shell/dbus_service_loader_linux.cc b/mojo/shell/dbus_service_loader_linux.cc
index af4e0d4..934637e 100644
--- a/mojo/shell/dbus_service_loader_linux.cc
+++ b/mojo/shell/dbus_service_loader_linux.cc
@@ -150,9 +150,15 @@ DBusServiceLoader::~DBusServiceLoader() {
DCHECK(url_to_load_context_.empty());
}
-void DBusServiceLoader::LoadService(ServiceManager* manager,
- const GURL& url,
- ScopedMessagePipeHandle shell_handle) {
+void DBusServiceLoader::Load(ServiceManager* manager,
+ const GURL& url,
+ scoped_refptr<LoadCallbacks> callbacks) {
+ // TODO(aa): This could be delayed until later, when we know that loading is
+ // going to succeed.
+ ScopedMessagePipeHandle shell_handle = callbacks->RegisterApplication();
+ if (!shell_handle.is_valid())
+ return;
+
DCHECK(url.SchemeIs("dbus"));
DCHECK(url_to_load_context_.find(url) == url_to_load_context_.end());
url_to_load_context_[url] =