Skip to content

Commit 2d25b89

Browse files
authored
xin-201 skip message while synchronize (ethereum#100)
1 parent ac5096d commit 2d25b89

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

eth/handler.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -847,6 +847,11 @@ func (pm *ProtocolManager) handleMsg(p *peer) error {
847847
pm.lendingpool.AddRemotes(txs)
848848
}
849849
case msg.Code == VoteMsg:
850+
// VoteMsg arrived, make sure we have a valid and fresh chain to handle them
851+
if atomic.LoadUint32(&pm.acceptTxs) == 0 {
852+
break
853+
}
854+
850855
var vote types.Vote
851856
if err := msg.Decode(&vote); err != nil {
852857
return errResp(ErrDecode, "msg %v: %v", msg, err)
@@ -864,6 +869,11 @@ func (pm *ProtocolManager) handleMsg(p *peer) error {
864869
}
865870

866871
case msg.Code == TimeoutMsg:
872+
// TimeoutMsg arrived, make sure we have a valid and fresh chain to handle them
873+
if atomic.LoadUint32(&pm.acceptTxs) == 0 {
874+
break
875+
}
876+
867877
var timeout types.Timeout
868878
if err := msg.Decode(&timeout); err != nil {
869879
return errResp(ErrDecode, "msg %v: %v", msg, err)
@@ -883,6 +893,11 @@ func (pm *ProtocolManager) handleMsg(p *peer) error {
883893
}
884894

885895
case msg.Code == SyncInfoMsg:
896+
// SyncInfoMsg arrived, make sure we have a valid and fresh chain to handle them
897+
if atomic.LoadUint32(&pm.acceptTxs) == 0 {
898+
break
899+
}
900+
886901
var syncInfo types.SyncInfo
887902
if err := msg.Decode(&syncInfo); err != nil {
888903
return errResp(ErrDecode, "msg %v: %v", msg, err)

0 commit comments

Comments
 (0)