Index: components/password_manager/core/browser/password_reuse_detection_manager.cc |
diff --git a/components/password_manager/core/browser/password_reuse_detection_manager.cc b/components/password_manager/core/browser/password_reuse_detection_manager.cc |
index 24a7c4f8e5e992bb6d7920736d3dd5d0e1914439..afd1a8e5035488021385296c40faf4eb227f68ad 100644 |
--- a/components/password_manager/core/browser/password_reuse_detection_manager.cc |
+++ b/components/password_manager/core/browser/password_reuse_detection_manager.cc |
@@ -9,6 +9,9 @@ |
#include "components/password_manager/core/browser/password_manager_client.h" |
#include "components/password_manager/core/browser/password_manager_metrics_util.h" |
#include "components/password_manager/core/browser/password_manager_util.h" |
+#if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
+#include "components/safe_browsing/password_protection/password_protection_service.h" |
+#endif |
namespace password_manager { |
@@ -24,6 +27,13 @@ PasswordReuseDetectionManager::PasswordReuseDetectionManager( |
PasswordReuseDetectionManager::~PasswordReuseDetectionManager() {} |
+#if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
+void PasswordReuseDetectionManager::SetPasswordProtectionService( |
+ base::WeakPtr<safe_browsing::PasswordProtectionService> pp_service) { |
+ password_protection_service_ = pp_service; |
+} |
+#endif |
+ |
void PasswordReuseDetectionManager::DidNavigateMainFrame( |
const GURL& main_frame_url) { |
main_frame_url_ = main_frame_url; |
@@ -60,6 +70,10 @@ void PasswordReuseDetectionManager::OnReuseFound( |
metrics_util::LogPasswordReuse( |
password.size(), saved_passwords, number_matches, |
client_->GetPasswordManager()->IsPasswordFieldDetectedOnPage()); |
+#if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
+ if (password_protection_service_) |
+ password_protection_service_->RecordPasswordReuse(main_frame_url_); |
+#endif |
} |
} // namespace password_manager |