--- a/webengine/osswebengine/WebKit/s60/plugins/PluginStream.cpp Tue Aug 31 16:17:46 2010 +0300
+++ b/webengine/osswebengine/WebKit/s60/plugins/PluginStream.cpp Wed Sep 01 12:28:30 2010 +0100
@@ -15,7 +15,7 @@
*
*/
-#include <sysutil.h>
+#include <SysUtil.h>
#include "../../bidi.h"
#include "Frame.h"
@@ -56,7 +56,7 @@
m_loaderclient->stop();
}
-void PluginStream::createNPStreamL(TPtrC8 url, TPtrC16 mimetype, long long length)
+void PluginStream::createNPStreamL(TPtrC8 url, TPtrC16 mimetype, long long length, const char* headers)
{
NPError error( NPERR_NO_ERROR );
@@ -84,7 +84,8 @@
m_stream->url = url16->AllocL();
m_stream->end = length;
m_stream->lastmodified = 0;
- m_stream->notifyData = m_notifydata;
+ m_stream->notifyData = m_notifydata;
+ m_stream->headers = headers;
error = m_pluginskin->getNPPluginFucs()->newstream ( m_pluginskin->getNPP(),
@@ -203,7 +204,7 @@
}
-void PluginStream::destroyStream(int reason)
+void PluginStream::destroyStream(int reason, TDesC* failedUrl)
{
if (m_streamDestroyed) return;
m_streamDestroyed = true;
@@ -235,8 +236,17 @@
}
- if ( m_pluginskin->getNPPluginFucs() && m_pluginskin->getNPPluginFucs()->destroystream ) {
- m_pluginskin->getNPPluginFucs()->destroystream( m_pluginskin->getNPP(), m_stream, npreason);
+ if ( m_pluginskin->getNPPluginFucs() ) {
+
+ if (m_stream && m_pluginskin->getNPPluginFucs()->destroystream){
+ m_pluginskin->getNPPluginFucs()->destroystream( m_pluginskin->getNPP(), m_stream, npreason);
+ if (m_loaderclient->notify() && m_pluginskin->getNPPluginFucs()->urlnotify)
+ m_pluginskin->getNPPluginFucs()->urlnotify( m_pluginskin->getNPP(), m_stream->url->Des(), npreason, m_notifydata);
+ }
+
+ if(!m_stream && m_loaderclient->notify() && failedUrl && m_pluginskin->getNPPluginFucs()->urlnotify){
+ m_pluginskin->getNPPluginFucs()->urlnotify( m_pluginskin->getNPP(), *failedUrl, npreason, m_notifydata);
+ }
}
if (reason == KErrNone) {