diff --git a/blockmanager.go b/blockmanager.go index 71331437..f328cf3e 100644 --- a/blockmanager.go +++ b/blockmanager.go @@ -1028,6 +1028,12 @@ out: } } + // Query the db for the latest best block since + // the block that was processed could be on a + // side chain or have caused a reorg. + newestSha, newestHeight, _ := b.server.db.NewestSha() + b.updateChainState(newestSha, newestHeight) + blockSha, _ := msg.block.Sha() msg.reply <- processBlockResponse{ isOrphan: b.blockChain.IsKnownOrphan( diff --git a/rpcserver.go b/rpcserver.go index c1dcf3d0..fe53432c 100644 --- a/rpcserver.go +++ b/rpcserver.go @@ -1870,7 +1870,7 @@ func handleSubmitBlock(s *rpcServer, cmd btcjson.Cmd) (interface{}, error) { return nil, err } - err = s.server.blockManager.blockChain.ProcessBlock(block, false) + _, err = s.server.blockManager.ProcessBlock(block) if err != nil { return fmt.Sprintf("rejected: %s", err.Error()), nil }