| Index: net/disk_cache/sparse_control.cc
|
| ===================================================================
|
| --- net/disk_cache/sparse_control.cc (revision 49603)
|
| +++ net/disk_cache/sparse_control.cc (working copy)
|
| @@ -374,10 +374,13 @@
|
| }
|
|
|
| // Se if we are tracking this child.
|
| - bool child_present = ChildPresent();
|
| - if (!child_present || !entry_->backend_->OpenEntry(key, &child_))
|
| + if (!ChildPresent())
|
| return ContinueWithoutChild(key);
|
|
|
| + child_ = entry_->backend_->OpenEntryImpl(key);
|
| + if (!child_)
|
| + return ContinueWithoutChild(key);
|
| +
|
| EntryImpl* child = static_cast<EntryImpl*>(child_);
|
| if (!(CHILD_ENTRY & child->GetEntryFlags()) ||
|
| child->GetDataSize(kSparseIndex) <
|
| @@ -398,7 +401,7 @@
|
|
|
| if (child_data_.header.last_block_len < 0 ||
|
| child_data_.header.last_block_len > kBlockSize) {
|
| - // Make sure this values are always within range.
|
| + // Make sure these values are always within range.
|
| child_data_.header.last_block_len = 0;
|
| child_data_.header.last_block = -1;
|
| }
|
| @@ -444,7 +447,8 @@
|
| if (kGetRangeOperation == operation_)
|
| return true;
|
|
|
| - if (!entry_->backend_->CreateEntry(key, &child_)) {
|
| + child_ = entry_->backend_->CreateEntryImpl(key);
|
| + if (!child_) {
|
| child_ = NULL;
|
| result_ = net::ERR_CACHE_READ_FAILURE;
|
| return false;
|
|
|