| Index: content/browser/indexed_db/indexed_db_backing_store.cc
|
| diff --git a/content/browser/indexed_db/indexed_db_backing_store.cc b/content/browser/indexed_db/indexed_db_backing_store.cc
|
| index f5904f9c1926ef5a2f6d9a701beb822ade227738..4ecceeb49c940ecf890135ea18cd301f7390f063 100644
|
| --- a/content/browser/indexed_db/indexed_db_backing_store.cc
|
| +++ b/content/browser/indexed_db/indexed_db_backing_store.cc
|
| @@ -749,7 +749,7 @@ IndexedDBBackingStore::IndexedDBBackingStore(
|
| IndexedDBFactory* indexed_db_factory,
|
| const Origin& origin,
|
| const base::FilePath& blob_path,
|
| - net::URLRequestContext* request_context,
|
| + scoped_refptr<net::URLRequestContextGetter> request_context_getter,
|
| std::unique_ptr<LevelDBDatabase> db,
|
| std::unique_ptr<LevelDBComparator> comparator,
|
| base::SequencedTaskRunner* task_runner)
|
| @@ -757,7 +757,7 @@ IndexedDBBackingStore::IndexedDBBackingStore(
|
| origin_(origin),
|
| blob_path_(blob_path),
|
| origin_identifier_(ComputeOriginIdentifier(origin)),
|
| - request_context_(request_context),
|
| + request_context_getter_(request_context_getter),
|
| task_runner_(task_runner),
|
| db_(std::move(db)),
|
| comparator_(std::move(comparator)),
|
| @@ -817,7 +817,7 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| IndexedDBFactory* indexed_db_factory,
|
| const Origin& origin,
|
| const base::FilePath& path_base,
|
| - net::URLRequestContext* request_context,
|
| + scoped_refptr<net::URLRequestContextGetter> request_context,
|
| IndexedDBDataLossInfo* data_loss_info,
|
| bool* disk_full,
|
| base::SequencedTaskRunner* task_runner,
|
| @@ -958,7 +958,7 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| IndexedDBFactory* indexed_db_factory,
|
| const Origin& origin,
|
| const base::FilePath& path_base,
|
| - net::URLRequestContext* request_context,
|
| + scoped_refptr<net::URLRequestContextGetter> request_context_getter,
|
| IndexedDBDataLossInfo* data_loss_info,
|
| bool* is_disk_full,
|
| LevelDBFactory* leveldb_factory,
|
| @@ -1085,7 +1085,7 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| base::trace_event::MemoryDumpProvider::Options());
|
|
|
| scoped_refptr<IndexedDBBackingStore> backing_store =
|
| - Create(indexed_db_factory, origin, blob_path, request_context,
|
| + Create(indexed_db_factory, origin, blob_path, request_context_getter,
|
| std::move(db), std::move(comparator), task_runner, status);
|
|
|
| if (clean_journal && backing_store.get()) {
|
| @@ -1141,7 +1141,7 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Create(
|
| IndexedDBFactory* indexed_db_factory,
|
| const Origin& origin,
|
| const base::FilePath& blob_path,
|
| - net::URLRequestContext* request_context,
|
| + scoped_refptr<net::URLRequestContextGetter> request_context,
|
| std::unique_ptr<LevelDBDatabase> db,
|
| std::unique_ptr<LevelDBComparator> comparator,
|
| base::SequencedTaskRunner* task_runner,
|
| @@ -2323,10 +2323,11 @@ class LocalWriteClosure : public FileWriterDelegate::DelegateWriteCallback,
|
| }
|
| }
|
|
|
| - void WriteBlobToFileOnIOThread(const FilePath& file_path,
|
| - const GURL& blob_url,
|
| - const base::Time& last_modified,
|
| - net::URLRequestContext* request_context) {
|
| + void WriteBlobToFileOnIOThread(
|
| + const FilePath& file_path,
|
| + const GURL& blob_url,
|
| + const base::Time& last_modified,
|
| + scoped_refptr<net::URLRequestContextGetter> request_context_getter) {
|
| DCHECK_CURRENTLY_ON(content::BrowserThread::IO);
|
| std::unique_ptr<storage::FileStreamWriter> writer(
|
| storage::FileStreamWriter::CreateForLocalFile(
|
| @@ -2337,6 +2338,8 @@ class LocalWriteClosure : public FileWriterDelegate::DelegateWriteCallback,
|
| std::move(writer), storage::FlushPolicy::FLUSH_ON_COMPLETION));
|
|
|
| DCHECK(blob_url.is_valid());
|
| + net::URLRequestContext* request_context =
|
| + request_context_getter->GetURLRequestContext();
|
| std::unique_ptr<net::URLRequest> blob_request(
|
| request_context->CreateRequest(blob_url, net::DEFAULT_PRIORITY,
|
| delegate.get()));
|
| @@ -2439,14 +2442,10 @@ bool IndexedDBBackingStore::WriteBlobFile(
|
| scoped_refptr<LocalWriteClosure> write_closure(
|
| new LocalWriteClosure(chained_blob_writer, task_runner_.get()));
|
| content::BrowserThread::PostTask(
|
| - content::BrowserThread::IO,
|
| - FROM_HERE,
|
| + content::BrowserThread::IO, FROM_HERE,
|
| base::Bind(&LocalWriteClosure::WriteBlobToFileOnIOThread,
|
| - write_closure.get(),
|
| - path,
|
| - descriptor.url(),
|
| - descriptor.last_modified(),
|
| - request_context_));
|
| + write_closure.get(), path, descriptor.url(),
|
| + descriptor.last_modified(), request_context_getter_));
|
| }
|
| return true;
|
| }
|
|
|