| Index: chrome/browser/history/history_database.cc
|
| diff --git a/chrome/browser/history/history_database.cc b/chrome/browser/history/history_database.cc
|
| index 25e8bdadf8be73cd526f843b67077614300bcf79..e48f7cb72ec293db5368a1a2d998728f224e780c 100644
|
| --- a/chrome/browser/history/history_database.cc
|
| +++ b/chrome/browser/history/history_database.cc
|
| @@ -28,7 +28,7 @@ namespace {
|
| // Current version number. We write databases at the "current" version number,
|
| // but any previous version that can read the "compatible" one can make do with
|
| // or database without *too* many bad effects.
|
| -static const int kCurrentVersionNumber = 20;
|
| +static const int kCurrentVersionNumber = 21;
|
| static const int kCompatibleVersionNumber = 16;
|
| static const char kEarlyExpirationThresholdKey[] = "early_expiration_threshold";
|
|
|
| @@ -307,6 +307,17 @@ sql::InitStatus HistoryDatabase::EnsureCurrentVersion(
|
| meta_table_.SetValue(kNeedsThumbnailMigrationKey, 1);
|
| }
|
|
|
| + if (cur_version == 20) {
|
| + // This is the version prior to adding the visit_duration field in visits
|
| + // database. We need to migrate the database.
|
| + if (!MigrateVisitsWithoutDuration()) {
|
| + LOG(WARNING) << "Unable to update history database to version 21.";
|
| + return sql::INIT_FAILURE;
|
| + }
|
| + ++cur_version;
|
| + meta_table_.SetVersionNumber(cur_version);
|
| + }
|
| +
|
| // When the version is too old, we just try to continue anyway, there should
|
| // not be a released product that makes a database too old for us to handle.
|
| LOG_IF(WARNING, cur_version < GetCurrentVersion()) <<
|
|
|