| Index: chrome/browser/chromeos/login/login_utils.cc
|
| diff --git a/chrome/browser/chromeos/login/login_utils.cc b/chrome/browser/chromeos/login/login_utils.cc
|
| index fafe4398fe5abc26626f9aadd4c18c42f612460f..29babc58a7ee30736a069e0bfa4795777ee2c112 100644
|
| --- a/chrome/browser/chromeos/login/login_utils.cc
|
| +++ b/chrome/browser/chromeos/login/login_utils.cc
|
| @@ -216,16 +216,25 @@ void LoginUtilsImpl::DoBrowserLaunchOnLocaleLoadedImpl(
|
| about_flags::PrefServiceFlagsStorage flags_storage_(profile->GetPrefs());
|
| about_flags::ConvertFlagsToSwitches(&flags_storage_, &user_flags,
|
| about_flags::kAddSentinels);
|
| +
|
| + std::set<CommandLine::StringType> command_line_difference;
|
| +
|
| // Only restart if needed and if not going into managed mode.
|
| // Don't restart browser if it is not first profile in session.
|
| if (UserManager::Get()->GetLoggedInUsers().size() == 1 &&
|
| !UserManager::Get()->IsLoggedInAsLocallyManagedUser() &&
|
| !about_flags::AreSwitchesIdenticalToCurrentCommandLine(
|
| - user_flags, *CommandLine::ForCurrentProcess())) {
|
| + user_flags,
|
| + *CommandLine::ForCurrentProcess(),
|
| + &command_line_difference)) {
|
| CommandLine::StringVector flags;
|
| // argv[0] is the program name |CommandLine::NO_PROGRAM|.
|
| flags.assign(user_flags.argv().begin() + 1, user_flags.argv().end());
|
| VLOG(1) << "Restarting to apply per-session flags...";
|
| +
|
| + about_flags::ReportCustomFlags("Login.CustomFlags",
|
| + command_line_difference);
|
| +
|
| DBusThreadManager::Get()->GetSessionManagerClient()->SetFlagsForUser(
|
| UserManager::Get()->GetActiveUser()->email(), flags);
|
| AttemptRestart(profile);
|
|
|