| Index: chrome/browser/password_manager/password_form_manager.cc
|
| diff --git a/chrome/browser/password_manager/password_form_manager.cc b/chrome/browser/password_manager/password_form_manager.cc
|
| index 11efdd224d83bf079c74371dba024b4ef0f44b80..767d3a2898db422b212383f23ac42749e1f1193b 100644
|
| --- a/chrome/browser/password_manager/password_form_manager.cc
|
| +++ b/chrome/browser/password_manager/password_form_manager.cc
|
| @@ -10,6 +10,7 @@
|
| #include "base/string_split.h"
|
| #include "base/string_util.h"
|
| #include "chrome/browser/password_manager/password_manager.h"
|
| +#include "chrome/browser/password_manager/password_store.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "webkit/glue/password_form_dom_manager.h"
|
|
|
| @@ -25,7 +26,7 @@ PasswordFormManager::PasswordFormManager(Profile* profile,
|
| observed_form_(observed_form),
|
| is_new_login_(true),
|
| password_manager_(password_manager),
|
| - pending_login_query_(0),
|
| + pending_login_query_(CancelableRequestProvider::InvalidHandle()),
|
| preferred_match_(NULL),
|
| state_(PRE_MATCHING_PHASE),
|
| profile_(profile),
|
| @@ -39,7 +40,6 @@ PasswordFormManager::PasswordFormManager(Profile* profile,
|
| }
|
|
|
| PasswordFormManager::~PasswordFormManager() {
|
| - CancelLoginsQuery();
|
| UMA_HISTOGRAM_ENUMERATION("PasswordManager.ActionsTaken",
|
| GetActionsTaken(),
|
| kMaxNumActionsTaken);
|
| @@ -197,7 +197,7 @@ void PasswordFormManager::Save() {
|
|
|
| void PasswordFormManager::FetchMatchingLoginsFromPasswordStore() {
|
| DCHECK_EQ(state_, PRE_MATCHING_PHASE);
|
| - DCHECK(!pending_login_query_);
|
| + DCHECK(!CancelableRequestProvider::HandleIsValid(pending_login_query_));
|
| state_ = MATCHING_PHASE;
|
| PasswordStore* password_store =
|
| profile_->GetPasswordStore(Profile::EXPLICIT_ACCESS);
|
| @@ -306,7 +306,8 @@ void PasswordFormManager::OnRequestDone(int handle,
|
| }
|
|
|
| void PasswordFormManager::OnPasswordStoreRequestDone(
|
| - int handle, const std::vector<PasswordForm*>& result) {
|
| + CancelableRequestProvider::Handle handle,
|
| + const std::vector<PasswordForm*>& result) {
|
| DCHECK_EQ(state_, MATCHING_PHASE);
|
| DCHECK_EQ(pending_login_query_, handle);
|
|
|
| @@ -316,6 +317,7 @@ void PasswordFormManager::OnPasswordStoreRequestDone(
|
| }
|
|
|
| OnRequestDone(handle, result);
|
| + pending_login_query_ = CancelableRequestProvider::InvalidHandle();
|
| }
|
|
|
| bool PasswordFormManager::IgnoreResult(const PasswordForm& form) const {
|
| @@ -420,16 +422,6 @@ void PasswordFormManager::UpdateLogin() {
|
| }
|
| }
|
|
|
| -void PasswordFormManager::CancelLoginsQuery() {
|
| - PasswordStore* password_store =
|
| - profile_->GetPasswordStore(Profile::EXPLICIT_ACCESS);
|
| - if (!password_store) {
|
| - // Can be NULL in unit tests.
|
| - return;
|
| - }
|
| - password_store->CancelLoginsQuery(pending_login_query_);
|
| -}
|
| -
|
| int PasswordFormManager::ScoreResult(const PasswordForm& candidate) const {
|
| DCHECK_EQ(state_, MATCHING_PHASE);
|
| // For scoring of candidate login data:
|
|
|