diff options
Diffstat (limited to 'Source/WebKit2/PluginProcess/PluginControllerProxy.cpp')
-rw-r--r-- | Source/WebKit2/PluginProcess/PluginControllerProxy.cpp | 7 |
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; } |