From df9ef1e7339b41f54e53e1bc2aeee0a5a24646d5 Mon Sep 17 00:00:00 2001 From: Ethan Buchman Date: Mon, 19 Oct 2015 12:34:53 -0400 Subject: [PATCH] check peerMempoolChan for nil on Reset --- mempool/reactor.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mempool/reactor.go b/mempool/reactor.go index 1101afa4b..a1f61a4c5 100644 --- a/mempool/reactor.go +++ b/mempool/reactor.go @@ -97,7 +97,12 @@ func (memR *MempoolReactor) Receive(chID byte, src *p2p.Peer, msgBytes []byte) { func (memR *MempoolReactor) ResetForBlockAndState(block *types.Block, state *sm.State) { ri := memR.Mempool.ResetForBlockAndState(block, state) for _, peer := range memR.Switch.Peers().List() { - peerMempoolCh := peer.Data.Get(types.PeerMempoolChKey).(chan ResetInfo) + peerMempoolChI := peer.Data.Get(types.PeerMempoolChKey) + if peerMempoolChI == nil { + // peer was added to switch but not yet to the memR + continue + } + peerMempoolCh := peerMempoolChI.(chan ResetInfo) select { case peerMempoolCh <- ri: default: