| Index: mojo/apps/js/content_handler_impl.cc
|
| diff --git a/mojo/apps/js/content_handler_impl.cc b/mojo/apps/js/content_handler_impl.cc
|
| index 233e8af179d49f9acaecd56a75eae776fb7510b4..610222a372383ee6b7f8ff6d5a8527215eed2a0a 100644
|
| --- a/mojo/apps/js/content_handler_impl.cc
|
| +++ b/mojo/apps/js/content_handler_impl.cc
|
| @@ -14,9 +14,11 @@ namespace apps {
|
| class ContentHandlerJSApp : public JSApp {
|
| public:
|
| ContentHandlerJSApp(ApplicationDelegateImpl* app_delegate_impl,
|
| - URLResponsePtr content)
|
| + URLResponsePtr content,
|
| + ScopedMessagePipeHandle sp)
|
| : JSApp(app_delegate_impl),
|
| - content_(content.Pass()) {
|
| + content_(content.Pass()),
|
| + requestor_message_pipe_handle_(sp.Pass()) {
|
| }
|
|
|
| bool Load(std::string* source, std::string* file_name) override {
|
| @@ -26,8 +28,13 @@ class ContentHandlerJSApp : public JSApp {
|
| return common::BlockingCopyToString(content_->body.Pass(), source);
|
| }
|
|
|
| + virtual Handle RequestorMessagePipeHandle() override {
|
| + return requestor_message_pipe_handle_.release();
|
| + }
|
| +
|
| private:
|
| URLResponsePtr content_;
|
| + ScopedMessagePipeHandle requestor_message_pipe_handle_;
|
| };
|
|
|
|
|
| @@ -42,8 +49,9 @@ void ContentHandlerImpl::OnConnect(
|
| const mojo::String& requestor_url,
|
| URLResponsePtr content,
|
| InterfaceRequest<ServiceProvider> service_provider) {
|
| + ScopedMessagePipeHandle sp(service_provider.PassMessagePipe());
|
| scoped_ptr<JSApp> js_app(
|
| - new ContentHandlerJSApp(app_delegate_impl_, content.Pass()));
|
| + new ContentHandlerJSApp(app_delegate_impl_, content.Pass(), sp.Pass()));
|
| app_delegate_impl_->StartJSApp(js_app.Pass());
|
| }
|
|
|
|
|