summaryrefslogtreecommitdiffstats
path: root/webkit/glue/plugins/plugin_stream_url.cc
diff options
context:
space:
mode:
Diffstat (limited to 'webkit/glue/plugins/plugin_stream_url.cc')
-rw-r--r--webkit/glue/plugins/plugin_stream_url.cc13
1 files changed, 9 insertions, 4 deletions
diff --git a/webkit/glue/plugins/plugin_stream_url.cc b/webkit/glue/plugins/plugin_stream_url.cc
index b050411..2aa2f84 100644
--- a/webkit/glue/plugins/plugin_stream_url.cc
+++ b/webkit/glue/plugins/plugin_stream_url.cc
@@ -44,16 +44,18 @@ void PluginStreamUrl::DidReceiveResponse(const std::string& mime_type,
const std::string& headers,
uint32 expected_length,
uint32 last_modified,
- bool request_is_seekable,
- bool* cancel) {
+ bool request_is_seekable) {
bool opened = Open(mime_type,
headers,
expected_length,
last_modified,
request_is_seekable);
if (!opened) {
+ CancelRequest();
instance()->RemoveStream(this);
- *cancel = true;
+ } else {
+ if (id_ > 0)
+ instance()->webplugin()->SetDeferResourceLoading(id_, false);
}
}
@@ -62,8 +64,11 @@ void PluginStreamUrl::DidReceiveData(const char* buffer, int length,
if (!open())
return;
- if (length > 0)
+ if (length > 0) {
Write(const_cast<char*>(buffer), length, data_offset);
+ if (id_ > 0)
+ instance()->webplugin()->SetDeferResourceLoading(id_, false);
+ }
}
void PluginStreamUrl::DidFinishLoading() {