Index: mojo/shell/external_application_listener_posix.cc |
diff --git a/mojo/shell/external_application_listener_posix.cc b/mojo/shell/external_application_listener_posix.cc |
index 42afa25b35ae01b278f25190a90d35cbb8c13454..5d56f06cedb5ff234342b07a946f377b56555f5c 100644 |
--- a/mojo/shell/external_application_listener_posix.cc |
+++ b/mojo/shell/external_application_listener_posix.cc |
@@ -55,9 +55,9 @@ class ExternalApplicationListenerPosix::RegistrarImpl |
embedder::ChannelInit channel_init; |
private: |
- virtual void Register(const String& app_url, |
- InterfaceRequest<Shell> shell, |
- const mojo::Closure& callback) override; |
+ virtual void Register( |
+ const String& app_url, |
+ const mojo::Callback<void(ShellPtr)>& callback) override; |
const RegisterCallback register_callback_; |
}; |
@@ -191,10 +191,10 @@ void ExternalApplicationListenerPosix::RegistrarImpl::OnConnectionError() { |
void ExternalApplicationListenerPosix::RegistrarImpl::Register( |
const String& app_url, |
- InterfaceRequest<Shell> shell, |
- const mojo::Closure& callback) { |
- register_callback_.Run(app_url.To<GURL>(), shell.PassMessagePipe()); |
- callback.Run(); |
+ const mojo::Callback<void(ShellPtr)>& callback) { |
+ MessagePipe pipe; |
+ register_callback_.Run(app_url.To<GURL>(), pipe.handle0.Pass()); |
+ callback.Run(MakeProxy<Shell>(pipe.handle1.Pass())); |
} |
} // namespace shell |