| 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 020126ecbbaaa7117aac7819a60c67bf7efc4fb0..a2dccf46329d7630b4c6d14e1471ad95cfa07415 100644
|
| --- a/content/browser/indexed_db/indexed_db_backing_store.cc
|
| +++ b/content/browser/indexed_db/indexed_db_backing_store.cc
|
| @@ -819,18 +819,15 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| const Origin& origin,
|
| const base::FilePath& path_base,
|
| net::URLRequestContext* request_context,
|
| - blink::WebIDBDataLoss* data_loss,
|
| - std::string* data_loss_message,
|
| + IndexedDBDataLossInfo* data_loss_info,
|
| bool* disk_full,
|
| base::SequencedTaskRunner* task_runner,
|
| bool clean_journal,
|
| leveldb::Status* status) {
|
| - *data_loss = blink::WebIDBDataLossNone;
|
| DefaultLevelDBFactory leveldb_factory;
|
| return IndexedDBBackingStore::Open(
|
| - indexed_db_factory, origin, path_base, request_context, data_loss,
|
| - data_loss_message, disk_full, &leveldb_factory, task_runner,
|
| - clean_journal, status);
|
| + indexed_db_factory, origin, path_base, request_context, data_loss_info,
|
| + disk_full, &leveldb_factory, task_runner, clean_journal, status);
|
| }
|
|
|
| static std::string OriginToCustomHistogramSuffix(const Origin& origin) {
|
| @@ -962,8 +959,7 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| const Origin& origin,
|
| const base::FilePath& path_base,
|
| net::URLRequestContext* request_context,
|
| - blink::WebIDBDataLoss* data_loss,
|
| - std::string* data_loss_message,
|
| + IndexedDBDataLossInfo* data_loss_info,
|
| bool* is_disk_full,
|
| LevelDBFactory* leveldb_factory,
|
| base::SequencedTaskRunner* task_runner,
|
| @@ -971,10 +967,9 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| leveldb::Status* status) {
|
| IDB_TRACE("IndexedDBBackingStore::Open");
|
| DCHECK(!path_base.empty());
|
| - *data_loss = blink::WebIDBDataLossNone;
|
| - *data_loss_message = "";
|
| *is_disk_full = false;
|
|
|
| + data_loss_info->status = blink::WebIDBDataLossNone;
|
| *status = leveldb::Status::OK();
|
|
|
| std::unique_ptr<LevelDBComparator> comparator(new Comparator());
|
| @@ -1012,8 +1007,8 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| if (leveldb_env::IndicatesDiskFull(*status)) {
|
| *is_disk_full = true;
|
| } else if (status->IsCorruption()) {
|
| - *data_loss = blink::WebIDBDataLossTotal;
|
| - *data_loss_message = leveldb_env::GetCorruptionMessage(*status);
|
| + data_loss_info->status = blink::WebIDBDataLossTotal;
|
| + data_loss_info->message = leveldb_env::GetCorruptionMessage(*status);
|
| }
|
| }
|
|
|
| @@ -1026,8 +1021,8 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| HistogramOpenStatus(INDEXED_DB_BACKING_STORE_OPEN_FAILED_PRIOR_CORRUPTION,
|
| origin);
|
| db.reset();
|
| - *data_loss = blink::WebIDBDataLossTotal;
|
| - *data_loss_message =
|
| + data_loss_info->status = blink::WebIDBDataLossTotal;
|
| + data_loss_info->message =
|
| "IndexedDB (database was corrupt): " + corruption_message;
|
| } else if (!IsSchemaKnown(db.get(), &is_schema_known)) {
|
| LOG(ERROR) << "IndexedDB had IO error checking schema, treating it as "
|
| @@ -1036,16 +1031,16 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBBackingStore::Open(
|
| INDEXED_DB_BACKING_STORE_OPEN_FAILED_IO_ERROR_CHECKING_SCHEMA,
|
| origin);
|
| db.reset();
|
| - *data_loss = blink::WebIDBDataLossTotal;
|
| - *data_loss_message = "I/O error checking schema";
|
| + data_loss_info->status = blink::WebIDBDataLossTotal;
|
| + data_loss_info->message = "I/O error checking schema";
|
| } else if (!is_schema_known) {
|
| LOG(ERROR) << "IndexedDB backing store had unknown schema, treating it "
|
| "as failure to open";
|
| HistogramOpenStatus(INDEXED_DB_BACKING_STORE_OPEN_FAILED_UNKNOWN_SCHEMA,
|
| origin);
|
| db.reset();
|
| - *data_loss = blink::WebIDBDataLossTotal;
|
| - *data_loss_message = "Unknown schema";
|
| + data_loss_info->status = blink::WebIDBDataLossTotal;
|
| + data_loss_info->message = "Unknown schema";
|
| }
|
| }
|
|
|
|
|