| Index: chrome/browser/ui/browser_init.cc
|
| diff --git a/chrome/browser/ui/browser_init.cc b/chrome/browser/ui/browser_init.cc
|
| index 7f6bf7bad55f605f661a2ee16cdb524246efce7b..55e1320cee8416f3ef8381442c3fe1de1f88f9d7 100644
|
| --- a/chrome/browser/ui/browser_init.cc
|
| +++ b/chrome/browser/ui/browser_init.cc
|
| @@ -1584,9 +1584,7 @@ void BrowserInit::LaunchWithProfile::CheckPreferencesBackup(Profile* profile) {
|
|
|
| // Check if backup is valid.
|
| if (!prefs_watcher->is_backup_valid()) {
|
| - scoped_ptr<BaseSettingChange> change(
|
| - protector::CreatePrefsBackupInvalidChange());
|
| - protector_service->ShowChange(change.release());
|
| + protector_service->ShowChange(protector::CreatePrefsBackupInvalidChange());
|
| // Further checks make no sense.
|
| return;
|
| }
|
| @@ -1599,13 +1597,39 @@ void BrowserInit::LaunchWithProfile::CheckPreferencesBackup(Profile* profile) {
|
| PinnedTabCodec::Tabs new_tabs = PinnedTabCodec::ReadPinnedTabs(profile);
|
| const base::Value* tabs_backup =
|
| prefs_watcher->GetBackupForPref(prefs::kPinnedTabs);
|
| - scoped_ptr<BaseSettingChange> change(
|
| - protector::CreateSessionStartupChange(
|
| - new_pref,
|
| - new_tabs,
|
| - SessionStartupPref::GetStartupPrefBackup(profile),
|
| - PinnedTabCodec::ReadPinnedTabs(tabs_backup)));
|
| - protector_service->ShowChange(change.release());
|
| + protector_service->ShowChange(protector::CreateSessionStartupChange(
|
| + new_pref,
|
| + new_tabs,
|
| + SessionStartupPref::GetStartupPrefBackup(profile),
|
| + PinnedTabCodec::ReadPinnedTabs(tabs_backup)));
|
| + }
|
| +
|
| + // Check for homepage changes.
|
| + if (prefs_watcher->DidPrefChange(prefs::kHomePage) ||
|
| + prefs_watcher->DidPrefChange(prefs::kHomePageIsNewTabPage) ||
|
| + prefs_watcher->DidPrefChange(prefs::kShowHomeButton)) {
|
| + LOG(WARNING) << "Homepage has changed";
|
| + PrefService* prefs = profile->GetPrefs();
|
| + std::string backup_homepage;
|
| + bool backup_homepage_is_ntp;
|
| + bool backup_show_home_button;
|
| + if (!prefs_watcher->GetBackupForPref(prefs::kHomePage)->
|
| + GetAsString(&backup_homepage) ||
|
| + !prefs_watcher->GetBackupForPref(prefs::kHomePageIsNewTabPage)->
|
| + GetAsBoolean(&backup_homepage_is_ntp) ||
|
| + !prefs_watcher->GetBackupForPref(prefs::kShowHomeButton)->
|
| + GetAsBoolean(&backup_show_home_button)) {
|
| + NOTREACHED();
|
| + }
|
| + protector_service->ShowChange(protector::CreateHomepageChange(
|
| + // New:
|
| + prefs->GetString(prefs::kHomePage),
|
| + prefs->GetBoolean(prefs::kHomePageIsNewTabPage),
|
| + prefs->GetBoolean(prefs::kShowHomeButton),
|
| + // Backup:
|
| + backup_homepage,
|
| + backup_homepage_is_ntp,
|
| + backup_show_home_button));
|
| }
|
| }
|
|
|
|
|