| Index: components/autofill/content/renderer/password_autofill_agent.cc
|
| diff --git a/components/autofill/content/renderer/password_autofill_agent.cc b/components/autofill/content/renderer/password_autofill_agent.cc
|
| index 851e64f46de7ff1a70e2a95cbacc64543316d64b..9e97ef839fe2aba207432071d2f9d3dc92d69ce6 100644
|
| --- a/components/autofill/content/renderer/password_autofill_agent.cc
|
| +++ b/components/autofill/content/renderer/password_autofill_agent.cc
|
| @@ -1798,13 +1798,21 @@ void PasswordAutofillAgent::ProvisionallySavePassword(
|
| const blink::WebFormElement& form,
|
| const blink::WebInputElement& input,
|
| ProvisionallySaveRestriction restriction) {
|
| - if (!password_form || (restriction == RESTRICTION_NON_EMPTY_PASSWORD &&
|
| - password_form->password_value.empty() &&
|
| - password_form->new_password_value.empty())) {
|
| + if (!password_form)
|
| return;
|
| - }
|
| + bool has_no_password = password_form->password_value.empty() &&
|
| + password_form->new_password_value.empty();
|
| + if (restriction == RESTRICTION_NON_EMPTY_PASSWORD && has_no_password)
|
| + return;
|
| +
|
| DCHECK(password_form && (!form.IsNull() || !input.IsNull()));
|
| provisionally_saved_form_.Set(std::move(password_form), form, input);
|
| + if (!has_no_password) {
|
| + GetPasswordManagerDriver()->ShowManualFallbackForSaving(
|
| + provisionally_saved_form_.password_form());
|
| + } else {
|
| + GetPasswordManagerDriver()->HideManualFallbackForSaving();
|
| + }
|
| }
|
|
|
| const mojom::AutofillDriverPtr& PasswordAutofillAgent::GetAutofillDriver() {
|
|
|