Index: components/policy/core/common/schema_registry.cc |
diff --git a/components/policy/core/common/schema_registry.cc b/components/policy/core/common/schema_registry.cc |
index 6482962a51840786e31b19201331da324549932d..03580859d07cd5fc33c2d806f6efadb1261ee422 100644 |
--- a/components/policy/core/common/schema_registry.cc |
+++ b/components/policy/core/common/schema_registry.cc |
@@ -199,6 +199,7 @@ ForwardingSchemaRegistry::ForwardingSchemaRegistry(SchemaRegistry* wrapped) |
schema_map_ = wrapped_->schema_map(); |
wrapped_->AddObserver(this); |
wrapped_->AddInternalObserver(this); |
+ UpdateReadiness(); |
} |
ForwardingSchemaRegistry::~ForwardingSchemaRegistry() { |
@@ -230,6 +231,10 @@ void ForwardingSchemaRegistry::OnSchemaRegistryUpdated(bool has_new_schemas) { |
Notify(has_new_schemas); |
} |
+void ForwardingSchemaRegistry::OnSchemaRegistryReady() { |
+ UpdateReadiness(); |
+} |
+ |
void ForwardingSchemaRegistry::OnSchemaRegistryShuttingDown( |
SchemaRegistry* registry) { |
DCHECK_EQ(wrapped_, registry); |
@@ -239,4 +244,9 @@ void ForwardingSchemaRegistry::OnSchemaRegistryShuttingDown( |
// Keep serving the same |schema_map_|. |
} |
+void ForwardingSchemaRegistry::UpdateReadiness() { |
+ if (wrapped_->IsReady()) |
+ SetAllDomainsReady(); |
+} |
+ |
} // namespace policy |