Index: chrome/browser/password_manager/password_store_x.cc |
diff --git a/chrome/browser/password_manager/password_store_x.cc b/chrome/browser/password_manager/password_store_x.cc |
index 595770f599d5d222c47aca3eed0661fdd58341bf..9cd6ca985e9424ad5dc08263ce2f125bfe2b9702 100644 |
--- a/chrome/browser/password_manager/password_store_x.cc |
+++ b/chrome/browser/password_manager/password_store_x.cc |
@@ -257,8 +257,12 @@ bool PasswordStoreX::allow_default_store() { |
ssize_t PasswordStoreX::MigrateLogins() { |
DCHECK(backend_.get()); |
ScopedVector<autofill::PasswordForm> forms; |
+ ScopedVector<autofill::PasswordForm> blacklist_forms; |
bool ok = PasswordStoreDefault::FillAutofillableLogins(&forms) && |
- PasswordStoreDefault::FillBlacklistLogins(&forms); |
+ PasswordStoreDefault::FillBlacklistLogins(&blacklist_forms); |
+ forms.reserve(forms.size() + blacklist_forms.size()); |
+ forms.insert(forms.end(), blacklist_forms.begin(), blacklist_forms.end()); |
+ blacklist_forms.weak_clear(); |
if (ok) { |
// We add all the passwords (and blacklist entries) to the native backend |
// before attempting to remove any from the login database, to make sure we |