[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

andersca at apple.com andersca at apple.com
Wed Dec 22 11:14:54 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit d5a8175df4a534ddc35f866fb88629894f0cdfc8
Author: andersca at apple.com <andersca at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Jul 15 23:28:24 2010 +0000

    Pass URL stream data to the plug-in
    https://bugs.webkit.org/show_bug.cgi?id=42420
    
    Reviewed by Sam Weinig.
    
    * WebProcess/Plugins/DummyPlugin.cpp:
    (WebKit::DummyPlugin::streamDidReceiveData):
    * WebProcess/Plugins/DummyPlugin.h:
    Add empty stub.
    
    * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
    (WebKit::NetscapePlugin::streamDidReceiveData):
    Call NetscapePluginStream::didReceiveData.
    
    * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
    (WebKit::NetscapePluginStream::didReceiveData):
    Deliver the data to the plug-in.
    
    * WebProcess/Plugins/Plugin.h:
    Add pure virtual streamDidReceiveData member function.
    
    * WebProcess/Plugins/PluginView.cpp:
    (WebKit::PluginView::Stream::didReceiveData):
    Call Plugin::streamDidReceiveData.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63487 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index bd70df0..648533d 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -2,6 +2,33 @@
 
         Reviewed by Sam Weinig.
 
+        Pass URL stream data to the plug-in
+        https://bugs.webkit.org/show_bug.cgi?id=42420
+
+        * WebProcess/Plugins/DummyPlugin.cpp:
+        (WebKit::DummyPlugin::streamDidReceiveData):
+        * WebProcess/Plugins/DummyPlugin.h:
+        Add empty stub.
+
+        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
+        (WebKit::NetscapePlugin::streamDidReceiveData):
+        Call NetscapePluginStream::didReceiveData.
+
+        * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
+        (WebKit::NetscapePluginStream::didReceiveData):
+        Deliver the data to the plug-in.
+
+        * WebProcess/Plugins/Plugin.h:
+        Add pure virtual streamDidReceiveData member function.
+
+        * WebProcess/Plugins/PluginView.cpp:
+        (WebKit::PluginView::Stream::didReceiveData):
+        Call Plugin::streamDidReceiveData.
+
+2010-07-15  Anders Carlsson  <andersca at apple.com>
+
+        Reviewed by Sam Weinig.
+
         Handle failed loads correctly
         https://bugs.webkit.org/show_bug.cgi?id=42418
 
diff --git a/WebKit2/WebProcess/Plugins/DummyPlugin.cpp b/WebKit2/WebProcess/Plugins/DummyPlugin.cpp
index c97f6ba..36d1872 100644
--- a/WebKit2/WebProcess/Plugins/DummyPlugin.cpp
+++ b/WebKit2/WebProcess/Plugins/DummyPlugin.cpp
@@ -83,6 +83,10 @@ void DummyPlugin::streamDidReceiveResponse(uint64_t streamID, const WebCore::KUR
 {
 }
 
+void DummyPlugin::streamDidReceiveData(uint64_t streamID, const char* bytes, int length)
+{
+}
+
 void DummyPlugin::streamDidFail(uint64_t streamID, bool wasCancelled)
 {
 }
diff --git a/WebKit2/WebProcess/Plugins/DummyPlugin.h b/WebKit2/WebProcess/Plugins/DummyPlugin.h
index 2040a12..7041997 100644
--- a/WebKit2/WebProcess/Plugins/DummyPlugin.h
+++ b/WebKit2/WebProcess/Plugins/DummyPlugin.h
@@ -51,6 +51,7 @@ private:
     virtual void didEvaluateJavaScript(uint64_t requestID, const WebCore::String& requestURLString, const WebCore::String& result);
     virtual void streamDidReceiveResponse(uint64_t streamID, const WebCore::KURL& responseURL, uint32_t streamLength, 
                                           uint32_t lastModifiedTime, const WebCore::String& mimeType, const WebCore::String& headers);
+    virtual void streamDidReceiveData(uint64_t streamID, const char* bytes, int length);
     virtual void streamDidFail(uint64_t streamID, bool wasCancelled);
 
     virtual PluginController* controller();
diff --git a/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp b/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp
index 99306b5..1af4fb9 100644
--- a/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp
+++ b/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp
@@ -337,6 +337,12 @@ void NetscapePlugin::streamDidReceiveResponse(uint64_t streamID, const KURL& res
         pluginStream->didReceiveResponse(responseURL, streamLength, lastModifiedTime, mimeType, headers);
 }
 
+void NetscapePlugin::streamDidReceiveData(uint64_t streamID, const char* bytes, int length)
+{
+    if (NetscapePluginStream* pluginStream = streamFromID(streamID))
+        pluginStream->didReceiveData(bytes, length);
+}
+
 void NetscapePlugin::streamDidFail(uint64_t streamID, bool wasCancelled)
 {
     if (NetscapePluginStream* pluginStream = streamFromID(streamID))
diff --git a/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h b/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h
index 2f17566..dca3f06 100644
--- a/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h
+++ b/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h
@@ -89,6 +89,7 @@ private:
     virtual void didEvaluateJavaScript(uint64_t requestID, const WebCore::String& requestURLString, const WebCore::String& result);
     virtual void streamDidReceiveResponse(uint64_t streamID, const WebCore::KURL& responseURL, uint32_t streamLength, 
                                           uint32_t lastModifiedTime, const WebCore::String& mimeType, const WebCore::String& headers);
+    virtual void streamDidReceiveData(uint64_t streamID, const char* bytes, int length);
     virtual void streamDidFail(uint64_t streamID, bool wasCancelled);
 
     virtual PluginController* controller();
diff --git a/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.cpp b/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.cpp
index a1ac75a..eb11e57 100644
--- a/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.cpp
+++ b/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.cpp
@@ -64,6 +64,14 @@ void NetscapePluginStream::didReceiveResponse(const KURL& responseURL, uint32_t
     start(responseURL, streamLength, lastModifiedTime, mimeType, headers);
 }
 
+void NetscapePluginStream::didReceiveData(const char* bytes, int length)
+{
+    // Delivering the data could cause the plug-in stream to go away so we keep a reference to it here.
+    RefPtr<NetscapePluginStream> protect(this);
+
+    deliverData(bytes, length);
+}
+
 void NetscapePluginStream::didFail(bool wasCancelled)
 {
     // Stopping the stream could cause the plug-in stream to go away so we keep a reference to it here.
diff --git a/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.h b/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.h
index d353c19..c149520 100644
--- a/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.h
+++ b/WebKit2/WebProcess/Plugins/Netscape/NetscapePluginStream.h
@@ -55,6 +55,7 @@ public:
 
     void didReceiveResponse(const WebCore::KURL& responseURL, uint32_t streamLength,
                             uint32_t lastModifiedTime, const WebCore::String& mimeType, const WebCore::String& headers);
+    void didReceiveData(const char* bytes, int length);
     void didFail(bool wasCancelled);
 
     void sendJavaScriptStream(const WebCore::String& requestURLString, const WebCore::String& result);
diff --git a/WebKit2/WebProcess/Plugins/Plugin.h b/WebKit2/WebProcess/Plugins/Plugin.h
index 979d8e9..c31cecc 100644
--- a/WebKit2/WebProcess/Plugins/Plugin.h
+++ b/WebKit2/WebProcess/Plugins/Plugin.h
@@ -77,6 +77,9 @@ public:
     virtual void streamDidReceiveResponse(uint64_t streamID, const WebCore::KURL& responseURL, uint32_t streamLength, 
                                           uint32_t lastModifiedTime, const WebCore::String& mimeType, const WebCore::String& headers) = 0;
 
+    // Tells the plug-in that a stream did receive data.
+    virtual void streamDidReceiveData(uint64_t streamID, const char* bytes, int length) = 0;
+
     // Tells the plug-in that a stream has failed to load, either because of network errors or because the load was cancelled.
     virtual void streamDidFail(uint64_t streamID, bool wasCancelled) = 0;
 
diff --git a/WebKit2/WebProcess/Plugins/PluginView.cpp b/WebKit2/WebProcess/Plugins/PluginView.cpp
index 6fb40f8..c83a567 100644
--- a/WebKit2/WebProcess/Plugins/PluginView.cpp
+++ b/WebKit2/WebProcess/Plugins/PluginView.cpp
@@ -170,7 +170,7 @@ void PluginView::Stream::didReceiveResponse(NetscapePlugInStreamLoader*, const R
 
 void PluginView::Stream::didReceiveData(NetscapePlugInStreamLoader*, const char* bytes, int length)
 {
-    // FIXME: Implement.
+    m_pluginView->m_plugin->streamDidReceiveData(m_streamID, bytes, length);
 }
 
 void PluginView::Stream::didFail(NetscapePlugInStreamLoader*, const ResourceError& error) 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list