Index: components/password_manager/core/browser/login_database.cc |
diff --git a/components/password_manager/core/browser/login_database.cc b/components/password_manager/core/browser/login_database.cc |
index d4e913cd7685f159ad0be44805ebfe05b9d6e9e5..c4384129839ee4d6a1bc58698affb1d7818c5ada 100644 |
--- a/components/password_manager/core/browser/login_database.cc |
+++ b/components/password_manager/core/browser/login_database.cc |
@@ -8,6 +8,7 @@ |
#include <stdint.h> |
#include <algorithm> |
#include <limits> |
+#include <map> |
#include <utility> |
#include "base/bind.h" |
@@ -1057,9 +1058,9 @@ bool LoginDatabase::DisableAutoSignInForAllLogins() { |
// static |
LoginDatabase::EncryptionResult LoginDatabase::InitPasswordFormFromStatement( |
PasswordForm* form, |
- sql::Statement& s) { |
+ sql::Statement* s) { |
std::string encrypted_password; |
- s.ColumnBlobAsString(COLUMN_PASSWORD_VALUE, &encrypted_password); |
+ s->ColumnBlobAsString(COLUMN_PASSWORD_VALUE, &encrypted_password); |
base::string16 decrypted_password; |
EncryptionResult encryption_result = |
DecryptedString(encrypted_password, &decrypted_password); |
@@ -1069,40 +1070,40 @@ LoginDatabase::EncryptionResult LoginDatabase::InitPasswordFormFromStatement( |
return encryption_result; |
} |
- std::string tmp = s.ColumnString(COLUMN_ORIGIN_URL); |
+ std::string tmp = s->ColumnString(COLUMN_ORIGIN_URL); |
form->origin = GURL(tmp); |
- tmp = s.ColumnString(COLUMN_ACTION_URL); |
+ tmp = s->ColumnString(COLUMN_ACTION_URL); |
form->action = GURL(tmp); |
- form->username_element = s.ColumnString16(COLUMN_USERNAME_ELEMENT); |
- form->username_value = s.ColumnString16(COLUMN_USERNAME_VALUE); |
- form->password_element = s.ColumnString16(COLUMN_PASSWORD_ELEMENT); |
+ form->username_element = s->ColumnString16(COLUMN_USERNAME_ELEMENT); |
+ form->username_value = s->ColumnString16(COLUMN_USERNAME_VALUE); |
+ form->password_element = s->ColumnString16(COLUMN_PASSWORD_ELEMENT); |
form->password_value = decrypted_password; |
- form->submit_element = s.ColumnString16(COLUMN_SUBMIT_ELEMENT); |
- tmp = s.ColumnString(COLUMN_SIGNON_REALM); |
+ form->submit_element = s->ColumnString16(COLUMN_SUBMIT_ELEMENT); |
+ tmp = s->ColumnString(COLUMN_SIGNON_REALM); |
form->signon_realm = tmp; |
- form->ssl_valid = (s.ColumnInt(COLUMN_SSL_VALID) > 0); |
- form->preferred = (s.ColumnInt(COLUMN_PREFERRED) > 0); |
+ form->ssl_valid = (s->ColumnInt(COLUMN_SSL_VALID) > 0); |
+ form->preferred = (s->ColumnInt(COLUMN_PREFERRED) > 0); |
form->date_created = |
- base::Time::FromInternalValue(s.ColumnInt64(COLUMN_DATE_CREATED)); |
- form->blacklisted_by_user = (s.ColumnInt(COLUMN_BLACKLISTED_BY_USER) > 0); |
- int scheme_int = s.ColumnInt(COLUMN_SCHEME); |
+ base::Time::FromInternalValue(s->ColumnInt64(COLUMN_DATE_CREATED)); |
+ form->blacklisted_by_user = (s->ColumnInt(COLUMN_BLACKLISTED_BY_USER) > 0); |
+ int scheme_int = s->ColumnInt(COLUMN_SCHEME); |
DCHECK_LE(0, scheme_int); |
DCHECK_GE(PasswordForm::SCHEME_LAST, scheme_int); |
form->scheme = static_cast<PasswordForm::Scheme>(scheme_int); |
- int type_int = s.ColumnInt(COLUMN_PASSWORD_TYPE); |
+ int type_int = s->ColumnInt(COLUMN_PASSWORD_TYPE); |
DCHECK(type_int >= 0 && type_int <= PasswordForm::TYPE_LAST) << type_int; |
form->type = static_cast<PasswordForm::Type>(type_int); |
- if (s.ColumnByteLength(COLUMN_POSSIBLE_USERNAMES)) { |
+ if (s->ColumnByteLength(COLUMN_POSSIBLE_USERNAMES)) { |
base::Pickle pickle( |
- static_cast<const char*>(s.ColumnBlob(COLUMN_POSSIBLE_USERNAMES)), |
- s.ColumnByteLength(COLUMN_POSSIBLE_USERNAMES)); |
+ static_cast<const char*>(s->ColumnBlob(COLUMN_POSSIBLE_USERNAMES)), |
+ s->ColumnByteLength(COLUMN_POSSIBLE_USERNAMES)); |
form->other_possible_usernames = DeserializeVector(pickle); |
} |
- form->times_used = s.ColumnInt(COLUMN_TIMES_USED); |
- if (s.ColumnByteLength(COLUMN_FORM_DATA)) { |
+ form->times_used = s->ColumnInt(COLUMN_TIMES_USED); |
+ if (s->ColumnByteLength(COLUMN_FORM_DATA)) { |
base::Pickle form_data_pickle( |
- static_cast<const char*>(s.ColumnBlob(COLUMN_FORM_DATA)), |
- s.ColumnByteLength(COLUMN_FORM_DATA)); |
+ static_cast<const char*>(s->ColumnBlob(COLUMN_FORM_DATA)), |
+ s->ColumnByteLength(COLUMN_FORM_DATA)); |
base::PickleIterator form_data_iter(form_data_pickle); |
bool success = |
autofill::DeserializeFormData(&form_data_iter, &form->form_data); |
@@ -1112,14 +1113,14 @@ LoginDatabase::EncryptionResult LoginDatabase::InitPasswordFormFromStatement( |
metrics_util::LogFormDataDeserializationStatus(status); |
} |
form->date_synced = |
- base::Time::FromInternalValue(s.ColumnInt64(COLUMN_DATE_SYNCED)); |
- form->display_name = s.ColumnString16(COLUMN_DISPLAY_NAME); |
- form->icon_url = GURL(s.ColumnString(COLUMN_ICON_URL)); |
+ base::Time::FromInternalValue(s->ColumnInt64(COLUMN_DATE_SYNCED)); |
+ form->display_name = s->ColumnString16(COLUMN_DISPLAY_NAME); |
+ form->icon_url = GURL(s->ColumnString(COLUMN_ICON_URL)); |
form->federation_origin = |
- url::Origin(GURL(s.ColumnString(COLUMN_FEDERATION_URL))); |
- form->skip_zero_click = (s.ColumnInt(COLUMN_SKIP_ZERO_CLICK) > 0); |
+ url::Origin(GURL(s->ColumnString(COLUMN_FEDERATION_URL))); |
+ form->skip_zero_click = (s->ColumnInt(COLUMN_SKIP_ZERO_CLICK) > 0); |
int generation_upload_status_int = |
- s.ColumnInt(COLUMN_GENERATION_UPLOAD_STATUS); |
+ s->ColumnInt(COLUMN_GENERATION_UPLOAD_STATUS); |
DCHECK(generation_upload_status_int >= 0 && |
generation_upload_status_int <= PasswordForm::UNKNOWN_STATUS); |
form->generation_upload_status = |
@@ -1323,7 +1324,7 @@ bool LoginDatabase::StatementToForms( |
while (statement->Step()) { |
std::unique_ptr<PasswordForm> new_form(new PasswordForm()); |
EncryptionResult result = |
- InitPasswordFormFromStatement(new_form.get(), *statement); |
+ InitPasswordFormFromStatement(new_form.get(), statement); |
if (result == ENCRYPTION_RESULT_SERVICE_FAILURE) |
return false; |
if (result == ENCRYPTION_RESULT_ITEM_FAILURE) |