Skip to content

Commit a8810e7

Browse files
authored
Fix error processing in finished_wait_state (#1868)
1 parent af7b554 commit a8810e7

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

validator/manager.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1350,7 +1350,6 @@ void ValidatorManagerImpl::finished_wait_state(BlockHandle handle, td::Result<td
13501350
for (auto &X : it->second.waiting_preliminary_) {
13511351
X.promise.set_error(S.clone());
13521352
}
1353-
wait_state_.erase(it);
13541353
} else if (!it->second.waiting_.empty() || !it->second.waiting_preliminary_.empty()) {
13551354
auto X = it->second.get_timeout();
13561355
auto P1 = td::PromiseCreator::lambda([SelfId = actor_id(this), handle](td::Result<td::Ref<ShardState>> R) {
@@ -1364,7 +1363,9 @@ void ValidatorManagerImpl::finished_wait_state(BlockHandle handle, td::Result<td
13641363
get_block_persistent_state_to_download(handle->id()))
13651364
.release();
13661365
it->second.actor_ = id;
1366+
return;
13671367
}
1368+
wait_state_.erase(it);
13681369
}
13691370
}
13701371

0 commit comments

Comments
 (0)