| Index: chrome/browser/webdata/web_database.cc
|
| ===================================================================
|
| --- chrome/browser/webdata/web_database.cc (revision 145728)
|
| +++ chrome/browser/webdata/web_database.cc (working copy)
|
| @@ -158,8 +158,15 @@
|
| }
|
|
|
| sql::InitStatus WebDatabase::MigrateOldVersionsAsNeeded() {
|
| + // Some malware tries to force protector to re-sign things by lowering the
|
| + // version number, causing migration to fail. Ensure the version number is at
|
| + // least as high as the compatible version number.
|
| + int current_version = std::max(meta_table_.GetVersionNumber(),
|
| + meta_table_.GetCompatibleVersionNumber());
|
| + if (current_version < meta_table_.GetCompatibleVersionNumber())
|
| + ChangeVersion(&meta_table_, current_version, false);
|
| +
|
| // Migrate if necessary.
|
| - int current_version = meta_table_.GetVersionNumber();
|
| switch (current_version) {
|
| // Versions 1 - 19 are unhandled. Version numbers greater than
|
| // kCurrentVersionNumber should have already been weeded out by the caller.
|
|
|