Index: chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
diff --git a/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc b/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
index 67787ba8a940ea2f8a99d21a2b13377a9345b7d5..4f238def986d8bbe9b19efa4c1eace394da3172a 100644 |
--- a/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
+++ b/chrome/browser/ui/passwords/manage_passwords_ui_controller.cc |
@@ -119,11 +119,12 @@ bool ManagePasswordsUIController::OnChooseCredentials( |
ScopedVector<autofill::PasswordForm> local_credentials, |
ScopedVector<autofill::PasswordForm> federated_credentials, |
base::Callback<void(const password_manager::CredentialInfo&)> callback){ |
- // TODO(vasilii): Do something clever with |federated_credentials|. |
DCHECK(!local_credentials.empty() || !federated_credentials.empty()); |
form_manager_.reset(); |
+ // TODO(melandory): fix the crash when |local_credentials| is empty. |
Mike West
2015/01/13 19:41:46
It's a slightly bigger TODO than that; we need the
melandory
2015/01/16 12:53:20
Done.
|
origin_ = local_credentials[0]->origin; |
- new_password_forms_.swap(local_credentials); |
+ local_credentials_forms_.swap(local_credentials); |
+ federated_credentials_forms_.swap(federated_credentials); |
// The map is useless because usernames may overlap. |
password_form_map_.clear(); |
SetState(password_manager::ui::CREDENTIAL_REQUEST_AND_BUBBLE_STATE); |
@@ -211,13 +212,12 @@ void ManagePasswordsUIController::SavePassword() { |
} |
void ManagePasswordsUIController::ChooseCredential( |
- bool was_chosen, |
- const autofill::PasswordForm& form) { |
+ const autofill::PasswordForm& form, |
+ password_manager::CredentialType credential_type) { |
DCHECK(password_manager::ui::IsCredentialsState(state_)); |
DCHECK(!credentials_callback_.is_null()); |
- password_manager::CredentialInfo info = was_chosen ? |
- password_manager::CredentialInfo(form) : |
- password_manager::CredentialInfo(); |
+ password_manager::CredentialInfo info = |
+ password_manager::CredentialInfo(form, credential_type); |
credentials_callback_.Run(info); |
SetState(password_manager::ui::INACTIVE_STATE); |
UpdateBubbleAndIconVisibility(); |