New issue
Advanced search Search tips

Issue 756415 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 725883



Sign in to add a comment

Force-saved credentials not offered in force-filling

Project Member Reported by battre@chromium.org, Aug 17 2017

Issue description

1. Go to a testing page like https://www.w3schools.com/html/tryit.asp?filename=tryhtml_inputpassword
2. Type a username and password.
3. Click on password icon in omnibar and save the password.
4. Reload page and observe that the password is correctly autofilled.

5. Type a new username and a new password.
6. Click on password icon in omnibar and save the password.
7. Observe that clicking on the username field only the password from step 3 is offered.
8. Select password from step 3.
9. Click on username field and see that password from step 6 is not offered.
10. Reload the page and observe that both passwords can be autofilled by pressing on the username.

11. Change the first credential and save the password by clicking on the password icon in the omnibar.
12. Click on the username, select the second credential.
13. Click on the username, select the first credential and observe that the old password is autofilled.

TL;DR: Manually saving credentials by clicking on the omnibox password icon does not update the cached credentials that you get from clicking on the password field.
 

Comment 1 by kolos@chromium.org, Aug 17 2017

Made a brief investigation. We should update dropdown list. 

https://cs.chromium.org/chromium/src/components/password_manager/core/browser/password_form_manager.cc?rcl=fbb03dd16b7d9a749d127f0252dfea5f324bb954&l=436
After password save/update, password_manager_->UpdateFormManagers() is called that initiate re-fetching credentials from the store. 

Will take more detailed look.

Comment 2 by kolos@chromium.org, Aug 18 2017

Owner: cfroussios@chromium.org
More references:
FormFetcher run this callback (PasswordFormManager::ProcessMatches):
https://cs.chromium.org/chromium/src/components/password_manager/core/browser/password_form_manager.cc?rcl=12d672123276e9346772f16ce74141ae864d235c&l=587 

It will propagate the saved credentials to ProcessFrameInternal =>  
password_manager_->Autofill (fill on account select is disabled by default now) -> 
driver->FillPasswordForm(fill_data); -> Here we also save a key and associated PasswordFormFillData to |password_autofill_manager_|, once the render says to the driver "ShowSuggestions" PasswordAutofillManager::OnShowPasswordSuggestions is called. I believe we should check that we have updated credentials there. 

Project Member

Comment 3 by bugdroid1@chromium.org, Aug 25 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/081b65ccf8acb836658c6413ffd47bed4ec2d733

commit 081b65ccf8acb836658c6413ffd47bed4ec2d733
Author: Christos Froussios <cfroussios@chromium.org>
Date: Fri Aug 25 08:30:16 2017

[Password Manager] Update suggestions when new credentials are fetched

If a password is added/updated without navigation to a page, for example
by using the manual fallbacks, now the autofill suggestions on the
current page will be updated to reflect the changes.

Bug:  756415 
Change-Id: I2d3081baefc5a0e96508b5675ed69edd9c4a0b54
Reviewed-on: https://chromium-review.googlesource.com/625796
Reviewed-by: Vadym Doroshenko <dvadym@chromium.org>
Commit-Queue: Christos Froussios <cfroussios@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497354}
[modify] https://crrev.com/081b65ccf8acb836658c6413ffd47bed4ec2d733/chrome/renderer/autofill/password_autofill_agent_browsertest.cc
[modify] https://crrev.com/081b65ccf8acb836658c6413ffd47bed4ec2d733/components/autofill/content/renderer/password_autofill_agent.cc
[modify] https://crrev.com/081b65ccf8acb836658c6413ffd47bed4ec2d733/components/autofill/content/renderer/password_autofill_agent.h
[modify] https://crrev.com/081b65ccf8acb836658c6413ffd47bed4ec2d733/components/password_manager/core/browser/password_form_manager.cc
[modify] https://crrev.com/081b65ccf8acb836658c6413ffd47bed4ec2d733/components/password_manager/core/browser/password_form_manager_unittest.cc

Status: Fixed (was: Available)

Sign in to add a comment