Index: components/sync/model_impl/shared_model_type_processor.cc |
diff --git a/components/sync/model_impl/shared_model_type_processor.cc b/components/sync/model_impl/shared_model_type_processor.cc |
index e6cc241001107b5e0468d6e158493dd327e5af75..4ad248b519120bf024848120928ac708adbcad88 100644 |
--- a/components/sync/model_impl/shared_model_type_processor.cc |
+++ b/components/sync/model_impl/shared_model_type_processor.cc |
@@ -48,8 +48,10 @@ void SharedModelTypeProcessor::OnMetadataLoaded( |
std::unique_ptr<MetadataBatch> batch) { |
DCHECK(CalledOnValidThread()); |
DCHECK(entities_.empty()); |
- DCHECK(!is_metadata_loaded_); |
- DCHECK(!IsConnected()); |
+ |
+ // An error occurred earlier in the model. |
+ if (is_metadata_loaded_) |
+ return; |
is_metadata_loaded_ = true; |
// Flip this flag here to cover all cases where we don't need to load data. |
@@ -566,7 +568,9 @@ void SharedModelTypeProcessor::OnInitialUpdateReceived( |
void SharedModelTypeProcessor::OnInitialPendingDataLoaded( |
std::unique_ptr<DataBatch> data_batch) { |
- DCHECK(!is_initial_pending_data_loaded_); |
+ // An error occurred before this callback. |
+ if (is_initial_pending_data_loaded_) |
+ return; |
ConsumeDataBatch(std::move(data_batch)); |
is_initial_pending_data_loaded_ = true; |