Index: components/autofill/common/password_form_fill_data.cc |
diff --git a/components/autofill/common/password_form_fill_data.cc b/components/autofill/common/password_form_fill_data.cc |
index e31823df50d8b4883f39aba03b4c59599f3e9792..34b0069047a2d12a0c08da8ed5639de7149d6a3e 100644 |
--- a/components/autofill/common/password_form_fill_data.cc |
+++ b/components/autofill/common/password_form_fill_data.cc |
@@ -5,6 +5,7 @@ |
#include "components/autofill/common/password_form_fill_data.h" |
#include "base/logging.h" |
+#include "base/utf_string_conversions.h" |
#include "components/autofill/common/form_field_data.h" |
namespace autofill { |
@@ -50,11 +51,26 @@ void InitPasswordFormFillData( |
result->basic_data.fields.push_back(password_field); |
result->wait_for_username = wait_for_username_before_autofill; |
+ if (preferred_match->is_psl_origin_match) { |
+ result->preferred_realm = |
+ ASCIIToUTF16(preferred_match->original_signon_realm); |
+ } else { |
+ result->preferred_realm = ASCIIToUTF16(preferred_match->signon_realm); |
+ } |
+ |
// Copy additional username/value pairs. |
content::PasswordFormMap::const_iterator iter; |
for (iter = matches.begin(); iter != matches.end(); iter++) { |
- if (iter->second != preferred_match) |
- result->additional_logins[iter->first] = iter->second->password_value; |
+ if (iter->second != preferred_match) { |
+ PasswordAndRealm value; |
+ value.password = iter->second->password_value; |
+ if (iter->second->is_psl_origin_match) { |
+ value.realm = ASCIIToUTF16(iter->second->original_signon_realm); |
+ } else { |
+ value.realm = ASCIIToUTF16(iter->second->signon_realm); |
+ } |
Ilya Sherman
2013/06/07 23:47:56
nit: No longer a need for curlies.
nyquist
2013/06/11 03:36:01
Done.
|
+ result->additional_logins[iter->first] = value; |
+ } |
if (enable_other_possible_usernames && |
!iter->second->other_possible_usernames.empty()) { |
// Note that there may be overlap between other_possible_usernames and |