Index: chrome/browser/password_manager/password_manager.cc |
diff --git a/chrome/browser/password_manager/password_manager.cc b/chrome/browser/password_manager/password_manager.cc |
index eb6adfc9ba7557a439379f098998a076c363657d..f6f8e0d4e6ac60bf7e12a34912f1c9c997aafc6d 100644 |
--- a/chrome/browser/password_manager/password_manager.cc |
+++ b/chrome/browser/password_manager/password_manager.cc |
@@ -350,12 +350,15 @@ void PasswordManager::OnPasswordFormsRendered( |
DCHECK(IsSavingEnabled()); |
- // We now assume that if there is at least one visible password form |
- // that means that the previous login attempt failed. |
- if (!visible_forms.empty()) { |
- provisional_save_manager_->SubmitFailed(); |
- provisional_save_manager_.reset(); |
- return; |
+ // If we see the login form again, then the login failed. |
+ for (size_t i = 0; i < visible_forms.size(); ++i) { |
+ if (visible_forms[i].action.is_valid() && |
+ provisional_save_manager_->pending_credentials().action == |
+ visible_forms[i].action) { |
Garrett Casto
2014/01/15 02:28:27
One thing to note is that it looks like at some po
vabr (Chromium)
2014/01/15 08:37:53
I actually started this CL with DoesManage + ACTIO
|
+ provisional_save_manager_->SubmitFailed(); |
+ provisional_save_manager_.reset(); |
+ return; |
+ } |
} |
// Looks like a successful login attempt. Either show an infobar or |