DescriptionRemove old_login_managers from PasswordManager::CreatePendingLoginManagers
This is what CreatePendingLoginManagers currently does when trying to ensure
that a new batch of forms gets associated PasswordFormManagers:
(1) It freezes a list of existing PasswordFormManager instances.
(2) For every input form, if it is not already managed by a PFM from the
frozen list, it creates a new one.
This CL removes the "freezing" part. Now all PFMs created until the point a
particular form is examined are considered. So if there was one PFM, A, before,
and two forms come in: X and Y, PasswordManager may proceed as follows:
(a) Realise that X is not managed by A, hence creating a PFM B.
(b) Realise that Y is not managed by A, but that it is managed by B, so no
action is needed.
Before the CL, the code would have created another PFM C, equivalent to B,
because it would not check whether Y is managed by B.
(This is a random fix spotted when converting from ScopedVector, hence the
associated bug is about removing ScopedVector.)
BUG=555132
Committed: https://crrev.com/a95ac2ad614b60f0cc3c35c3725410dbbe0a68a6
Cr-Commit-Position: refs/heads/master@{#406252}
Patch Set 1 #Patch Set 2 : Remove outdated comment #
Dependent Patchsets: Messages
Total messages: 14 (9 generated)
|