From b483fe9e71ff2197976c30d046643edf6934e261 Mon Sep 17 00:00:00 2001 From: Jonny Rhea <5555162+jrhea@users.noreply.github.com> Date: Tue, 4 Aug 2026 01:16:45 -0500 Subject: [PATCH] eth/syncer: fix nil deref when the target block is missing (#35442) i didn't try to trigger the nil deref, but fixing it shouldn't be controversial --- eth/syncer/syncer.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/eth/syncer/syncer.go b/eth/syncer/syncer.go index b04d8f22e8..dfe4b80e93 100644 --- a/eth/syncer/syncer.go +++ b/eth/syncer/syncer.go @@ -180,9 +180,10 @@ func (s *Syncer) run() { var synced bool var block *types.Header if target != nil { - tb := s.backend.BlockChain().GetBlockByHash(target.Hash()) - synced = tb != nil - block = tb.Header() + if tb := s.backend.BlockChain().GetBlockByHash(target.Hash()); tb != nil { + synced = true + block = tb.Header() + } } else { timestamp := time.Unix(int64(ev.Latest.Time), 0) synced = time.Since(timestamp) < 10*time.Minute