Index: content/renderer/pepper/pepper_plugin_delegate_impl.cc |
diff --git a/content/renderer/pepper/pepper_plugin_delegate_impl.cc b/content/renderer/pepper/pepper_plugin_delegate_impl.cc |
index cfea3d1a956b1546eba2e41b6a537870b9ae97b1..c90e823ea4e1ef1966e97080a13469427c0bfa59 100644 |
--- a/content/renderer/pepper/pepper_plugin_delegate_impl.cc |
+++ b/content/renderer/pepper/pepper_plugin_delegate_impl.cc |
@@ -33,6 +33,7 @@ |
#include "content/public/common/context_menu_params.h" |
#include "content/public/common/media_stream_request.h" |
#include "content/public/renderer/content_renderer_client.h" |
+#include "content/renderer/browser_plugin/browser_plugin_constants.h" |
#include "content/renderer/gamepad_shared_memory_reader.h" |
#include "content/renderer/media/audio_hardware.h" |
#include "content/renderer/media/media_stream_dispatcher.h" |
@@ -259,6 +260,30 @@ PepperPluginDelegateImpl::CreatePepperPluginModule( |
return module; |
} |
+scoped_refptr<webkit::ppapi::PluginModule> |
+ PepperPluginDelegateImpl::CreateBrowserPluginModule( |
+ base::ProcessHandle process_handle, |
+ const IPC::ChannelHandle& channel_handle) { |
+ // Create a new HostDispatcher for the proxying, and hook it to a new |
+ // PluginModule. Note that AddLiveModule must be called before any early |
jam
2012/04/06 21:05:23
? you're not calling AddLiveModule
Fady Samuel
2012/04/06 22:46:32
This began as a copy-and-paste and trimming of Cre
|
+ // returns since the module's destructor will remove itself. |
+ scoped_refptr<webkit::ppapi::PluginModule> module = |
+ new webkit::ppapi::PluginModule(kBrowserPluginName, |
+ FilePath(kBrowserPluginPath), |
+ NULL /* lifetime delegate */); |
+ |
+ scoped_ptr<HostDispatcherWrapper> dispatcher(new HostDispatcherWrapper); |
+ if (!dispatcher->Init( |
+ process_handle, |
+ channel_handle, |
+ module->pp_module(), |
+ webkit::ppapi::PluginModule::GetLocalGetInterfaceFunc(), |
+ GetPreferences())) |
+ return scoped_refptr<webkit::ppapi::PluginModule>(); |
+ module->InitAsProxied(dispatcher.release()); |
+ return module; |
+} |
+ |
scoped_refptr<PepperBrokerImpl> PepperPluginDelegateImpl::CreateBroker( |
webkit::ppapi::PluginModule* plugin_module) { |
DCHECK(plugin_module); |