summaryrefslogtreecommitdiff
path: root/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/PluginProcess/PluginControllerProxy.cpp')
-rw-r--r--Source/WebKit2/PluginProcess/PluginControllerProxy.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp b/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
index d9bbfeeb4..24a8cee99 100644
--- a/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
+++ b/Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
@@ -102,8 +102,8 @@ bool PluginControllerProxy::initialize(const PluginCreationParameters& creationP
return false;
}
- m_windowNPObject = m_connection->npRemoteObjectMap()->createNPObjectProxy(creationParameters.windowNPObjectID, m_plugin.get());
- ASSERT(m_windowNPObject);
+ if (creationParameters.windowNPObjectID)
+ m_windowNPObject = m_connection->npRemoteObjectMap()->createNPObjectProxy(creationParameters.windowNPObjectID, m_plugin.get());
bool returnValue = m_plugin->initialize(this, creationParameters.parameters);
@@ -246,6 +246,9 @@ void PluginControllerProxy::cancelManualStreamLoad()
NPObject* PluginControllerProxy::windowScriptNPObject()
{
+ if (!m_windowNPObject)
+ return 0;
+
retainNPObject(m_windowNPObject);
return m_windowNPObject;
}