Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(371)

Unified Diff: components/password_manager/content/browser/visible_password_observer.cc

Issue 2500213002: Track visible password fields by RenderFrameHost, not frame tree node (Closed)
Patch Set: fix unit test memory leak Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/password_manager/content/browser/visible_password_observer.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/password_manager/content/browser/visible_password_observer.cc
diff --git a/components/password_manager/content/browser/visible_password_observer.cc b/components/password_manager/content/browser/visible_password_observer.cc
index 9f9210b37e24501fde8618a3af96d8c71c12ace7..671b34fe0a928603e56093199e9966e2df64508a 100644
--- a/components/password_manager/content/browser/visible_password_observer.cc
+++ b/components/password_manager/content/browser/visible_password_observer.cc
@@ -15,15 +15,13 @@ VisiblePasswordObserver::~VisiblePasswordObserver() {}
void VisiblePasswordObserver::RenderFrameHasVisiblePasswordField(
content::RenderFrameHost* render_frame_host) {
- frame_tree_nodes_with_visible_password_fields_.insert(
- render_frame_host->GetFrameTreeNodeId());
+ frames_with_visible_password_fields_.insert(render_frame_host);
MaybeNotifyPasswordInputShownOnHttp();
}
void VisiblePasswordObserver::RenderFrameHasNoVisiblePasswordFields(
content::RenderFrameHost* render_frame_host) {
- frame_tree_nodes_with_visible_password_fields_.erase(
- render_frame_host->GetFrameTreeNodeId());
+ frames_with_visible_password_fields_.erase(render_frame_host);
MaybeNotifyAllFieldsInvisible();
}
@@ -32,9 +30,8 @@ void VisiblePasswordObserver::RenderFrameDeleted(
// If a renderer process crashes, it won't send notifications that
// the password fields have been hidden, so watch for crashing
// processes and remove them from
- // |frame_tree_nodes_with_visible_password_fields_|.
- frame_tree_nodes_with_visible_password_fields_.erase(
- render_frame_host->GetFrameTreeNodeId());
+ // |frames_with_visible_password_fields_|.
+ frames_with_visible_password_fields_.erase(render_frame_host);
MaybeNotifyAllFieldsInvisible();
}
@@ -49,7 +46,7 @@ void VisiblePasswordObserver::MaybeNotifyPasswordInputShownOnHttp() {
}
void VisiblePasswordObserver::MaybeNotifyAllFieldsInvisible() {
- if (frame_tree_nodes_with_visible_password_fields_.empty() &&
+ if (frames_with_visible_password_fields_.empty() &&
!content::IsOriginSecure(web_contents_->GetVisibleURL())) {
web_contents_->OnAllPasswordInputsHiddenOnHttp();
}
« no previous file with comments | « components/password_manager/content/browser/visible_password_observer.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698