Index: chrome/browser/prefs/chrome_pref_service_factory.cc |
diff --git a/chrome/browser/prefs/chrome_pref_service_factory.cc b/chrome/browser/prefs/chrome_pref_service_factory.cc |
index 7041b31452bbe674b22edcc79a5a3f74b9221766..1bd905fc42a6a83d003f06b3948cc9887f88d50a 100644 |
--- a/chrome/browser/prefs/chrome_pref_service_factory.cc |
+++ b/chrome/browser/prefs/chrome_pref_service_factory.cc |
@@ -228,9 +228,12 @@ void HandleReadError(PersistentPrefStore::PrefReadError error) { |
// an example problem that this can cause. |
// Do some diagnosis and try to avoid losing data. |
int message_id = 0; |
- if (error <= PersistentPrefStore::PREF_READ_ERROR_JSON_TYPE) { |
+ if (error <= PersistentPrefStore::PREF_READ_ERROR_JSON_TYPE || |
+ error >= PersistentPrefStore::PREF_READ_ERROR_LEVELDB_DESTROY_FAILED) { |
message_id = IDS_PREFERENCES_CORRUPT_ERROR; |
- } else if (error != PersistentPrefStore::PREF_READ_ERROR_NO_FILE) { |
+ } else if (error != PersistentPrefStore::PREF_READ_ERROR_NO_FILE && |
+ error < PersistentPrefStore:: |
+ PREF_READ_ERROR_LEVELDB_DESTROYED_REOPEN_SUCCESS) { |
message_id = IDS_PREFERENCES_UNREADABLE_ERROR; |
} |