- attachNode := node
- for c.index.NodeByHeight(attachNode.Height) != attachNode {
- attachNodes = append([]*state.BlockNode{attachNode}, attachNodes...)
- attachNode = attachNode.Parent
- }
+ for attachBlockHeader, detachBlockHeader := beginAttach, beginDetach; detachBlockHeader.Hash() != attachBlockHeader.Hash(); {
+ var attachRollback, detachRollBack bool
+ if attachRollback = attachBlockHeader.Height >= detachBlockHeader.Height; attachRollback {
+ attachBlockHeaders = append([]*types.BlockHeader{attachBlockHeader}, attachBlockHeaders...)
+ }