Index: webkit/plugins/ppapi/ppapi_webplugin_impl.cc |
diff --git a/webkit/plugins/ppapi/ppapi_webplugin_impl.cc b/webkit/plugins/ppapi/ppapi_webplugin_impl.cc |
index 30820fbecc10de58a3da6e5bab671c42b3bcc523..4ce9527c37a28abd9cf94e76db9d578b6deb5805 100644 |
--- a/webkit/plugins/ppapi/ppapi_webplugin_impl.cc |
+++ b/webkit/plugins/ppapi/ppapi_webplugin_impl.cc |
@@ -93,6 +93,9 @@ bool WebPluginImpl::initialize(WebPluginContainer* container) { |
if (!instance_) |
return false; |
+ // Enable script objects for this plugin. |
+ container->allowScriptObjects(); |
+ |
bool success = instance_->Initialize(init_data_->arg_names, |
init_data_->arg_values, |
full_frame_); |
@@ -116,6 +119,9 @@ bool WebPluginImpl::initialize(WebPluginContainer* container) { |
} |
void WebPluginImpl::destroy() { |
+ // Tell |container_| to clear references to this plugin's script objects. |
+ container_->clearScriptObjects(); |
+ |
if (instance_) { |
::ppapi::PpapiGlobals::Get()->GetVarTracker()->ReleaseVar(instance_object_); |
instance_object_ = PP_MakeUndefined(); |
@@ -148,6 +154,10 @@ NPObject* WebPluginImpl::scriptableObject() { |
return message_channel_np_object; |
} |
+NPP WebPluginImpl::pluginNPP() { |
+ return instance_->instanceNPP(); |
+} |
+ |
bool WebPluginImpl::getFormValue(WebString& value) { |
return false; |
} |