| Index: components/password_manager/core/browser/password_manager.cc
|
| diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc
|
| index e0e9f7a1af0cf1e67a9c96ae8d09f543203c7452..1b79639b8812ace2d127a4167c0b7f2506b0de17 100644
|
| --- a/components/password_manager/core/browser/password_manager.cc
|
| +++ b/components/password_manager/core/browser/password_manager.cc
|
| @@ -566,7 +566,8 @@ bool PasswordManager::ShouldPromptUserToSavePassword() const {
|
| return !client_->IsAutomaticPasswordSavingEnabled() &&
|
| (provisional_save_manager_->IsNewLogin() ||
|
| provisional_save_manager_->observed_form()
|
| - .IsPossibleChangePasswordFormWithoutUsername()) &&
|
| + .IsPossibleChangePasswordFormWithoutUsername() ||
|
| + provisional_save_manager_->password_overriden()) &&
|
| !provisional_save_manager_->has_generated_password() &&
|
| !provisional_save_manager_->IsPendingCredentialsPublicSuffixMatch();
|
| }
|
| @@ -697,9 +698,11 @@ void PasswordManager::OnLoginSuccessful() {
|
| empty_password);
|
| if (logger)
|
| logger->LogMessage(Logger::STRING_DECISION_ASK);
|
| - bool update_password = !provisional_save_manager_->best_matches().empty() &&
|
| - provisional_save_manager_->observed_form()
|
| - .IsPossibleChangePasswordFormWithoutUsername();
|
| + bool update_password =
|
| + (!provisional_save_manager_->best_matches().empty() &&
|
| + provisional_save_manager_->observed_form()
|
| + .IsPossibleChangePasswordFormWithoutUsername()) ||
|
| + provisional_save_manager_->password_overriden();
|
| if (client_->PromptUserToSaveOrUpdatePassword(
|
| provisional_save_manager_.Pass(),
|
| CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER,
|
|
|