| Index: chrome/browser/ui/webui/signin/user_manager_screen_handler.cc
|
| diff --git a/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc b/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc
|
| index a56bbe86f0f4b62d786d9c086bb32c4b41c3cbb3..18cfa3296d6b368c8aaacdd6e367fa41894f434b 100644
|
| --- a/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc
|
| +++ b/chrome/browser/ui/webui/signin/user_manager_screen_handler.cc
|
| @@ -469,12 +469,24 @@ void UserManagerScreenHandler::HandleAuthenticatedLaunchUser(
|
| }
|
| }
|
|
|
| - // In order to support the upgrade case where we have a local hash but no
|
| - // password token, the user perform a full online reauth.
|
| - UserManager::ShowReauthDialog(web_ui()->GetWebContents()->GetBrowserContext(),
|
| - email_address_,
|
| - signin_metrics::Reason::REASON_UNLOCK);
|
| + content::BrowserContext* browser_context =
|
| + web_ui()->GetWebContents()->GetBrowserContext();
|
| +
|
| +// In order to support the upgrade case where we have a local hash but no
|
| +// password token, the user perform a full online reauth.
|
| +#if !defined(OS_MACOSX)
|
| + if (!email_address_.empty()) {
|
| + UserManager::ShowReauthDialog(browser_context, email_address_,
|
| + signin_metrics::Reason::REASON_UNLOCK);
|
| + } else {
|
| + // Fresh sign in via user manager without existed email address.
|
| + UserManager::ShowSigninDialog(browser_context, profile_path);
|
| + }
|
| }
|
| +#else
|
| + UserManager::ShowReauthDialog(browser_context, email_address_,
|
| + signin_metrics::Reason::REASON_UNLOCK);
|
| +#endif
|
|
|
| void UserManagerScreenHandler::HandleRemoveUser(const base::ListValue* args) {
|
| DCHECK(args);
|
|
|