Index: components/password_manager/core/browser/log_router.cc |
diff --git a/components/password_manager/core/browser/log_router.cc b/components/password_manager/core/browser/log_router.cc |
index c8719a88152a177450b5d9d135d90ca178b79e2a..7aee715bf827b50e25d2b8c90bc16c6e822736af 100644 |
--- a/components/password_manager/core/browser/log_router.cc |
+++ b/components/password_manager/core/browser/log_router.cc |
@@ -40,8 +40,10 @@ std::string LogRouter::RegisterReceiver(PasswordManagerLogger* receiver) { |
DCHECK(receiver); |
DCHECK(accumulated_logs_.empty() || receivers_.might_have_observers()); |
- // TODO(vabr): Once the clients provide API for that, notify them if the |
- // number of receivers went from 0 to 1. |
+ if (!receivers_.might_have_observers()) { |
+ FOR_EACH_OBSERVER( |
+ PasswordManagerClient, clients_, OnLogRouterAvailabilityChanged(true)); |
+ } |
receivers_.AddObserver(receiver); |
return accumulated_logs_; |
} |
@@ -51,8 +53,8 @@ void LogRouter::UnregisterReceiver(PasswordManagerLogger* receiver) { |
receivers_.RemoveObserver(receiver); |
if (!receivers_.might_have_observers()) { |
accumulated_logs_.clear(); |
- // TODO(vabr): Once the clients provide API for that, notify them that the |
- // number of receivers went from 1 to 0. |
+ FOR_EACH_OBSERVER( |
+ PasswordManagerClient, clients_, OnLogRouterAvailabilityChanged(false)); |
} |
} |