webengine/osswebengine/WebKit/s60/plugins/PluginStreamLoaderClient.cpp
changeset 25 0ed94ceaa377
parent 11 c8a366e56285
child 28 d39add9822e2
--- a/webengine/osswebengine/WebKit/s60/plugins/PluginStreamLoaderClient.cpp	Tue Nov 24 09:02:20 2009 +0200
+++ b/webengine/osswebengine/WebKit/s60/plugins/PluginStreamLoaderClient.cpp	Thu Dec 17 09:20:16 2009 +0200
@@ -62,6 +62,8 @@
     m_loader = 0; 
     m_request = 0;
     m_pluginstream = 0;
+    m_pluginskin = pluginskin;
+    m_notifydata = notifydata;
     m_frame = frame;
     m_pluginstream = new (ELeave) PluginStream(pluginskin, this, notifydata);
     m_request = new (ELeave) ResourceRequest(m_frame->loader()->completeURL(url));
@@ -84,6 +86,8 @@
     m_loader = 0; 
     m_request = 0;
     m_pluginstream = 0;
+    m_pluginskin = pluginskin;
+    m_notifydata = notifydata;
     m_frame = frame;
     m_pluginstream = new (ELeave) PluginStream(pluginskin, this, notifydata);
     m_request = new (ELeave) ResourceRequest(request.url());
@@ -124,6 +128,8 @@
     
     delete m_request;     
     delete m_pluginstream;    
+    m_pluginskin = NULL;
+    m_notifydata = NULL;
     
 }
 
@@ -147,9 +153,12 @@
 
 void NetscapePlugInStreamLoaderClient::cancelWithError(const ResourceError& error)
 {
-    if (m_loader && !m_loader->isDone()) 
-        m_loader->cancel(error);           
+    if (m_loader && !m_loader->isDone()){
+        if(m_pluginskin && m_pluginskin->getNPPluginFucs())
+            m_pluginskin->getNPPluginFucs()->urlnotify(m_pluginskin->m_instance, error.failingURL(), NPRES_NETWORK_ERR, m_notifydata);
+        m_loader->cancel(error);
     }
+}
 
 void NetscapePlugInStreamLoaderClient::didReceiveResponse(const ResourceResponse& response)
 {