Index: webkit/media/buffered_data_source.cc |
diff --git a/webkit/media/buffered_data_source.cc b/webkit/media/buffered_data_source.cc |
index 737535026a0a77af9d573b16e19e8fb5184f4977..9bada2ab7d8df7559eceea339d9ac7b8be93cd8f 100644 |
--- a/webkit/media/buffered_data_source.cc |
+++ b/webkit/media/buffered_data_source.cc |
@@ -40,7 +40,7 @@ BufferedDataSource::BufferedDataSource( |
const DownloadingCB& downloading_cb) |
: cors_mode_(BufferedResourceLoader::kUnspecified), |
total_bytes_(kPositionNotSpecified), |
- buffered_bytes_(0), |
+ assume_fully_buffered_(false), |
streaming_(false), |
frame_(frame), |
read_size_(0), |
@@ -288,7 +288,7 @@ void BufferedDataSource::RestartLoadingTask() { |
frame_); |
} else { |
loader_->Start( |
- base::Bind(&BufferedDataSource::NonHttpInitialStartCallback, this), |
+ base::Bind(&BufferedDataSource::PartialReadStartCallback, this), |
scherkus (not reviewing)
2012/07/10 22:18:33
fixes bug #1
|
base::Bind(&NonHttpLoadingStateChangedCallback), |
base::Bind(&NonHttpProgressCallback), |
frame_); |
@@ -452,7 +452,7 @@ void BufferedDataSource::NonHttpInitialStartCallback( |
if (success) { |
total_bytes_ = instance_size; |
- buffered_bytes_ = total_bytes_; |
+ assume_fully_buffered_ = true; |
} else { |
loader_->Stop(); |
} |
@@ -607,11 +607,12 @@ void BufferedDataSource::UpdateHostState_Locked() { |
if (!host()) |
return; |
- if (total_bytes_ != kPositionNotSpecified) |
+ if (total_bytes_ != kPositionNotSpecified) { |
Ami GONE FROM CHROMIUM
2012/07/11 00:51:54
reverse test & early-return?
scherkus (not reviewing)
2012/07/11 01:10:56
Done.
|
host()->SetTotalBytes(total_bytes_); |
- int64 start = loader_->first_byte_position(); |
- if (buffered_bytes_ > start) |
- host()->AddBufferedByteRange(start, buffered_bytes_); |
+ |
+ if (assume_fully_buffered_) |
+ host()->AddBufferedByteRange(0, total_bytes_); |
scherkus (not reviewing)
2012/07/10 22:18:33
fixes bug #2
|
+ } |
} |
} // namespace webkit_media |