| Index: net/tools/dump_cache/simple_cache_dumper.cc
|
| diff --git a/net/tools/dump_cache/simple_cache_dumper.cc b/net/tools/dump_cache/simple_cache_dumper.cc
|
| index 56162ca3e10905e2e327ea3a807f20519047d947..dd5ecbf15f65c010896502d80379468257fa7f06 100644
|
| --- a/net/tools/dump_cache/simple_cache_dumper.cc
|
| +++ b/net/tools/dump_cache/simple_cache_dumper.cc
|
| @@ -26,7 +26,6 @@ SimpleCacheDumper::SimpleCacheDumper(base::FilePath input_path,
|
| output_path_(output_path),
|
| writer_(new DiskDumper(output_path)),
|
| cache_thread_(new base::Thread("CacheThead")),
|
| - iter_(NULL),
|
| src_entry_(NULL),
|
| dst_entry_(NULL),
|
| io_callback_(base::Bind(&SimpleCacheDumper::OnIOComplete,
|
| @@ -150,15 +149,15 @@ int SimpleCacheDumper::DoOpenEntry() {
|
| DCHECK(!dst_entry_);
|
| DCHECK(!src_entry_);
|
| state_ = STATE_OPEN_ENTRY_COMPLETE;
|
| - return cache_->OpenNextEntry(&iter_, &src_entry_, io_callback_);
|
| + if (!iter_)
|
| + iter_ = cache_->CreateIterator();
|
| + return iter_->OpenNextEntry(&src_entry_, io_callback_);
|
| }
|
|
|
| int SimpleCacheDumper::DoOpenEntryComplete(int rv) {
|
| // ERR_FAILED indicates iteration finished.
|
| - if (rv == ERR_FAILED) {
|
| - cache_->EndEnumeration(&iter_);
|
| + if (rv == ERR_FAILED)
|
| return OK;
|
| - }
|
|
|
| if (rv < 0)
|
| return rv;
|
|
|