summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorjkarlin <jkarlin@chromium.org>2016-01-22 16:36:39 -0800
committerCommit bot <commit-bot@chromium.org>2016-01-23 00:37:47 +0000
commit929a5c03a6d71eb5e92c9407376fa32b0e2a7ef8 (patch)
tree56cd989bf995e603810354d0a2d12c3321edcd09 /storage
parent1fee3b4957164505e70df4152fa31a2807fefa74 (diff)
downloadchromium_src-929a5c03a6d71eb5e92c9407376fa32b0e2a7ef8.zip
chromium_src-929a5c03a6d71eb5e92c9407376fa32b0e2a7ef8.tar.gz
chromium_src-929a5c03a6d71eb5e92c9407376fa32b0e2a7ef8.tar.bz2
Disk cache blobs need to start from offset when reading
This CL makes disk cache blobs start from the given element's offset, which enables blob slicing. BUG=522322 Review URL: https://codereview.chromium.org/1614883002 Cr-Commit-Position: refs/heads/master@{#371098}
Diffstat (limited to 'storage')
-rw-r--r--storage/browser/blob/blob_reader.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/storage/browser/blob/blob_reader.cc b/storage/browser/blob/blob_reader.cc
index 6e3e866..43735ce 100644
--- a/storage/browser/blob/blob_reader.cc
+++ b/storage/browser/blob/blob_reader.cc
@@ -449,9 +449,10 @@ BlobReader::Status BlobReader::ReadDiskCacheEntryItem(const BlobDataItem& item,
DCHECK_GE(read_buf_->BytesRemaining(), bytes_to_read);
const int result = item.disk_cache_entry()->ReadData(
- item.disk_cache_stream_index(), current_item_offset_, read_buf_.get(),
- bytes_to_read, base::Bind(&BlobReader::DidReadDiskCacheEntry,
- weak_factory_.GetWeakPtr()));
+ item.disk_cache_stream_index(), item.offset() + current_item_offset_,
+ read_buf_.get(), bytes_to_read,
+ base::Bind(&BlobReader::DidReadDiskCacheEntry,
+ weak_factory_.GetWeakPtr()));
if (result >= 0) {
AdvanceBytesRead(result);
return Status::DONE;