Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2943)

Unified Diff: webkit/glue/media/buffered_resource_loader.cc

Issue 6926002: Merge 83942 - Partial revert of 82061 so we keep the initial unbounded range request. (Closed) Base URL: svn://svn.chromium.org/chrome/branches/742/src/
Patch Set: Created 9 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webkit/glue/media/buffered_resource_loader.cc
===================================================================
--- webkit/glue/media/buffered_resource_loader.cc (revision 84000)
+++ webkit/glue/media/buffered_resource_loader.cc (working copy)
@@ -103,7 +103,7 @@
WebURLRequest request(url_);
request.setTargetType(WebURLRequest::TargetIsMedia);
- if (!IsWholeFileRange()) {
+ if (IsRangeRequest()) {
range_requested_ = true;
request.setHTTPHeaderField(WebString::fromUTF8("Range"),
WebString::fromUTF8(GenerateHeaders(
@@ -295,8 +295,11 @@
if (range_requested_) {
// If we have verified the partial response and it is correct, we will
- // return net::OK.
- if (!partial_response || !VerifyPartialResponse(response))
+ // return net::OK. It's also possible for a server to support range
+ // requests without advertising Accept-Ranges: bytes.
+ if (partial_response && VerifyPartialResponse(response))
+ range_supported_ = true;
+ else
error = net::ERR_INVALID_RESPONSE;
} else if (response.httpStatusCode() != kHttpOK) {
// We didn't request a range but server didn't reply with "200 OK".
@@ -643,10 +646,8 @@
event_callback_->Run();
}
-bool BufferedResourceLoader::IsWholeFileRange() const {
- return ((first_byte_position_ == kPositionNotSpecified ||
- first_byte_position_ == 0) &&
- last_byte_position_ == kPositionNotSpecified);
+bool BufferedResourceLoader::IsRangeRequest() const {
+ return first_byte_position_ != kPositionNotSpecified;
}
} // namespace webkit_glue
« no previous file with comments | « webkit/glue/media/buffered_resource_loader.h ('k') | webkit/glue/media/buffered_resource_loader_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698