From dfff21934cfdab95481ced817668243ed29159bc Mon Sep 17 00:00:00 2001 From: j75689 Date: Mon, 25 Apr 2022 10:25:23 +0800 Subject: [PATCH] fix close of closed channel issue --- core/remote_state_verifier.go | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/core/remote_state_verifier.go b/core/remote_state_verifier.go index ff0a23018b..cef98e5b9a 100644 --- a/core/remote_state_verifier.go +++ b/core/remote_state_verifier.go @@ -121,12 +121,8 @@ func (vm *remoteVerifyManager) mainLoop() { case <-pruneTicker.C: vm.taskLock.Lock() for hash, task := range vm.tasks { - if vm.bc.insertStopped() { - close(task.terminalCh) - continue - } - if vm.bc.CurrentHeader().Number.Cmp(task.blockHeader.Number) == 1 && - vm.bc.CurrentHeader().Number.Uint64()-task.blockHeader.Number.Uint64() > pruneHeightDiff { + if vm.bc.insertStopped() || (vm.bc.CurrentHeader().Number.Cmp(task.blockHeader.Number) == 1 && + vm.bc.CurrentHeader().Number.Uint64()-task.blockHeader.Number.Uint64() > pruneHeightDiff) { delete(vm.tasks, hash) verifyTaskCounter.Dec(1) verifyTaskFailedMeter.Mark(1)