Index: content/browser/service_worker/service_worker_database.cc |
diff --git a/content/browser/service_worker/service_worker_database.cc b/content/browser/service_worker/service_worker_database.cc |
index cfedd00dd4f944aaa7395aaa24ad7a6bbb5b5ad9..b0104f1318e70f099d3ee35f62f2d2e9bdcf02ee 100644 |
--- a/content/browser/service_worker/service_worker_database.cc |
+++ b/content/browser/service_worker/service_worker_database.cc |
@@ -240,9 +240,7 @@ ServiceWorkerDatabase::ServiceWorkerDatabase(const base::FilePath& path) |
next_avail_registration_id_(0), |
next_avail_resource_id_(0), |
next_avail_version_id_(0), |
- is_disabled_(false), |
- was_corruption_detected_(false), |
- is_initialized_(false) { |
+ state_(UNINITIALIZED) { |
sequence_checker_.DetachFromSequence(); |
} |
@@ -635,7 +633,7 @@ ServiceWorkerDatabase::Status ServiceWorkerDatabase::LazyOpen( |
DCHECK(sequence_checker_.CalledOnValidSequencedThread()); |
// Do not try to open a database if we tried and failed once. |
- if (is_disabled_) |
+ if (state_ == DISABLED) |
return STATUS_ERROR_FAILED; |
if (IsOpen()) |
return STATUS_OK; |
@@ -676,7 +674,7 @@ ServiceWorkerDatabase::Status ServiceWorkerDatabase::LazyOpen( |
return status; |
DCHECK_LE(0, db_version); |
if (db_version > 0) |
- is_initialized_ = true; |
+ state_ = INITIALIZED; |
return STATUS_OK; |
} |
@@ -684,7 +682,7 @@ bool ServiceWorkerDatabase::IsNewOrNonexistentDatabase( |
ServiceWorkerDatabase::Status status) { |
if (status == STATUS_ERROR_NOT_FOUND) |
return true; |
- if (status == STATUS_OK && !is_initialized_) |
+ if (status == STATUS_OK && state_ == UNINITIALIZED) |
return true; |
return false; |
} |
@@ -923,12 +921,12 @@ ServiceWorkerDatabase::Status ServiceWorkerDatabase::ReadDatabaseVersion( |
ServiceWorkerDatabase::Status ServiceWorkerDatabase::WriteBatch( |
leveldb::WriteBatch* batch) { |
DCHECK(batch); |
- DCHECK(!is_disabled_); |
+ DCHECK_NE(DISABLED, state_); |
- if (!is_initialized_) { |
+ if (state_ == UNINITIALIZED) { |
// Write the database schema version. |
batch->Put(kDatabaseVersionKey, base::Int64ToString(kCurrentSchemaVersion)); |
- is_initialized_ = true; |
+ state_ = INITIALIZED; |
} |
leveldb::Status status = db_->Write(leveldb::WriteOptions(), batch); |
@@ -956,7 +954,7 @@ void ServiceWorkerDatabase::BumpNextVersionIdIfNeeded( |
} |
bool ServiceWorkerDatabase::IsOpen() { |
- return db_.get() != NULL; |
+ return db_ != NULL; |
} |
void ServiceWorkerDatabase::HandleError( |
@@ -965,9 +963,7 @@ void ServiceWorkerDatabase::HandleError( |
// TODO(nhiroki): Add an UMA histogram. |
DLOG(ERROR) << "Failed at: " << from_here.ToString() |
<< " with error: " << status.ToString(); |
- is_disabled_ = true; |
- if (status.IsCorruption()) |
- was_corruption_detected_ = true; |
+ state_ = DISABLED; |
db_.reset(); |
} |