Commit 41465253 authored by Mitsuru Oshima's avatar Mitsuru Oshima Committed by Chromium LUCI CQ

Migrate might_have_observer to empty in components/autofill

Bug: 1155308
Change-Id: I129ec6179e1e1c394c47109979421b15b877356b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2638423Reviewed-by: default avatarMaxim Kolosovskiy  <kolos@chromium.org>
Commit-Queue: Mitsuru Oshima <oshima@chromium.org>
Cr-Commit-Position: refs/heads/master@{#845170}
parent 92008804
...@@ -36,7 +36,7 @@ void LogRouter::ProcessLog(const std::string& text) { ...@@ -36,7 +36,7 @@ void LogRouter::ProcessLog(const std::string& text) {
void LogRouter::ProcessLog(base::Value&& node) { void LogRouter::ProcessLog(base::Value&& node) {
// This may not be called when there are no receivers (i.e., the router is // This may not be called when there are no receivers (i.e., the router is
// inactive), because in that case the logs cannot be displayed. // inactive), because in that case the logs cannot be displayed.
DCHECK(receivers_.might_have_observers()); DCHECK(!receivers_.empty());
accumulated_logs_.emplace_back(std::move(node)); accumulated_logs_.emplace_back(std::move(node));
for (LogReceiver& receiver : receivers_) for (LogReceiver& receiver : receivers_)
receiver.LogEntry(accumulated_logs_.back()); receiver.LogEntry(accumulated_logs_.back());
...@@ -45,7 +45,7 @@ void LogRouter::ProcessLog(base::Value&& node) { ...@@ -45,7 +45,7 @@ void LogRouter::ProcessLog(base::Value&& node) {
bool LogRouter::RegisterManager(LogManager* manager) { bool LogRouter::RegisterManager(LogManager* manager) {
DCHECK(manager); DCHECK(manager);
managers_.AddObserver(manager); managers_.AddObserver(manager);
return receivers_.might_have_observers(); return !receivers_.empty();
} }
void LogRouter::UnregisterManager(LogManager* manager) { void LogRouter::UnregisterManager(LogManager* manager) {
...@@ -56,9 +56,9 @@ void LogRouter::UnregisterManager(LogManager* manager) { ...@@ -56,9 +56,9 @@ void LogRouter::UnregisterManager(LogManager* manager) {
const std::vector<base::Value>& LogRouter::RegisterReceiver( const std::vector<base::Value>& LogRouter::RegisterReceiver(
LogReceiver* receiver) { LogReceiver* receiver) {
DCHECK(receiver); DCHECK(receiver);
DCHECK(accumulated_logs_.empty() || receivers_.might_have_observers()); DCHECK(accumulated_logs_.empty() || !receivers_.empty());
if (!receivers_.might_have_observers()) { if (receivers_.empty()) {
for (LogManager& manager : managers_) for (LogManager& manager : managers_)
manager.OnLogRouterAvailabilityChanged(true); manager.OnLogRouterAvailabilityChanged(true);
} }
...@@ -69,7 +69,7 @@ const std::vector<base::Value>& LogRouter::RegisterReceiver( ...@@ -69,7 +69,7 @@ const std::vector<base::Value>& LogRouter::RegisterReceiver(
void LogRouter::UnregisterReceiver(LogReceiver* receiver) { void LogRouter::UnregisterReceiver(LogReceiver* receiver) {
DCHECK(receivers_.HasObserver(receiver)); DCHECK(receivers_.HasObserver(receiver));
receivers_.RemoveObserver(receiver); receivers_.RemoveObserver(receiver);
if (!receivers_.might_have_observers()) { if (receivers_.empty()) {
// |accumulated_logs_| can become very long; use the swap instead of clear() // |accumulated_logs_| can become very long; use the swap instead of clear()
// to ensure that the memory is freed. // to ensure that the memory is freed.
std::vector<base::Value>().swap(accumulated_logs_); std::vector<base::Value>().swap(accumulated_logs_);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment