Index: content/browser/indexed_db/indexed_db_factory_impl.cc |
diff --git a/content/browser/indexed_db/indexed_db_factory_impl.cc b/content/browser/indexed_db/indexed_db_factory_impl.cc |
index 38836c18741da3c1cc642dca74abab617b73f322..1ddb6d4d1d5dca61ff5fb0e4fd416bf0ae84eebb 100644 |
--- a/content/browser/indexed_db/indexed_db_factory_impl.cc |
+++ b/content/browser/indexed_db/indexed_db_factory_impl.cc |
@@ -175,14 +175,12 @@ void IndexedDBFactoryImpl::GetDatabaseNames( |
net::URLRequestContext* request_context) { |
IDB_TRACE("IndexedDBFactoryImpl::GetDatabaseNames"); |
// TODO(dgrogan): Plumb data_loss back to script eventually? |
- blink::WebIDBDataLoss data_loss; |
- std::string data_loss_message; |
+ IndexedDBDataLossInfo data_loss_info; |
bool disk_full; |
leveldb::Status s; |
// TODO(cmumford): Handle this error |
- scoped_refptr<IndexedDBBackingStore> backing_store = |
- OpenBackingStore(origin, data_directory, request_context, &data_loss, |
- &data_loss_message, &disk_full, &s); |
+ scoped_refptr<IndexedDBBackingStore> backing_store = OpenBackingStore( |
+ origin, data_directory, request_context, &data_loss_info, &disk_full, &s); |
if (!backing_store.get()) { |
callbacks->OnError( |
IndexedDBDatabaseError(blink::WebIDBDatabaseExceptionUnknownError, |
@@ -225,13 +223,11 @@ void IndexedDBFactoryImpl::DeleteDatabase( |
} |
// TODO(dgrogan): Plumb data_loss back to script eventually? |
- blink::WebIDBDataLoss data_loss; |
- std::string data_loss_message; |
+ IndexedDBDataLossInfo data_loss_info; |
bool disk_full = false; |
leveldb::Status s; |
- scoped_refptr<IndexedDBBackingStore> backing_store = |
- OpenBackingStore(origin, data_directory, request_context, &data_loss, |
- &data_loss_message, &disk_full, &s); |
+ scoped_refptr<IndexedDBBackingStore> backing_store = OpenBackingStore( |
+ origin, data_directory, request_context, &data_loss_info, &disk_full, &s); |
if (!backing_store.get()) { |
IndexedDBDatabaseError error(blink::WebIDBDatabaseExceptionUnknownError, |
ASCIIToUTF16( |
@@ -346,22 +342,20 @@ IndexedDBFactoryImpl::OpenBackingStoreHelper( |
const Origin& origin, |
const base::FilePath& data_directory, |
net::URLRequestContext* request_context, |
- blink::WebIDBDataLoss* data_loss, |
- std::string* data_loss_message, |
+ IndexedDBDataLossInfo* data_loss_info, |
bool* disk_full, |
bool first_time, |
leveldb::Status* status) { |
return IndexedDBBackingStore::Open( |
- this, origin, data_directory, request_context, data_loss, |
- data_loss_message, disk_full, context_->TaskRunner(), first_time, status); |
+ this, origin, data_directory, request_context, data_loss_info, disk_full, |
+ context_->TaskRunner(), first_time, status); |
} |
scoped_refptr<IndexedDBBackingStore> IndexedDBFactoryImpl::OpenBackingStore( |
const Origin& origin, |
const base::FilePath& data_directory, |
net::URLRequestContext* request_context, |
- blink::WebIDBDataLoss* data_loss, |
- std::string* data_loss_message, |
+ IndexedDBDataLossInfo* data_loss_info, |
bool* disk_full, |
leveldb::Status* status) { |
const bool open_in_memory = data_directory.empty(); |
@@ -380,9 +374,9 @@ scoped_refptr<IndexedDBBackingStore> IndexedDBFactoryImpl::OpenBackingStore( |
} else { |
first_time = !backends_opened_since_boot_.count(origin); |
- backing_store = OpenBackingStoreHelper( |
- origin, data_directory, request_context, data_loss, data_loss_message, |
- disk_full, first_time, status); |
+ backing_store = |
+ OpenBackingStoreHelper(origin, data_directory, request_context, |
+ data_loss_info, disk_full, first_time, status); |
} |
if (backing_store.get()) { |
@@ -412,15 +406,14 @@ void IndexedDBFactoryImpl::Open(const base::string16& name, |
scoped_refptr<IndexedDBDatabase> database; |
IndexedDBDatabase::Identifier unique_identifier(origin, name); |
const auto& it = database_map_.find(unique_identifier); |
- blink::WebIDBDataLoss data_loss = blink::WebIDBDataLossNone; |
- std::string data_loss_message; |
+ IndexedDBDataLossInfo data_loss_info; |
bool disk_full = false; |
bool was_open = (it != database_map_.end()); |
if (!was_open) { |
leveldb::Status s; |
scoped_refptr<IndexedDBBackingStore> backing_store = |
- OpenBackingStore(origin, data_directory, request_context, &data_loss, |
- &data_loss_message, &disk_full, &s); |
+ OpenBackingStore(origin, data_directory, request_context, |
+ &data_loss_info, &disk_full, &s); |
if (!backing_store.get()) { |
if (disk_full) { |
connection.callbacks->OnError( |
@@ -461,8 +454,8 @@ void IndexedDBFactoryImpl::Open(const base::string16& name, |
database = it->second; |
} |
- if (data_loss != blink::WebIDBDataLossNone) |
- connection.callbacks->OnDataLoss(data_loss, data_loss_message); |
+ if (data_loss_info.status != blink::WebIDBDataLossNone) |
+ connection.callbacks->OnDataLoss(data_loss_info); |
database->OpenConnection(connection); |