diff --git a/core/chain_manager.go b/core/chain_manager.go
index 8371a129d4104abfc0e86ded521bd20d6faa78ad..4f1e1e68a990bcf783c9e2f134b578289b3227bf 100644
--- a/core/chain_manager.go
+++ b/core/chain_manager.go
@@ -330,14 +330,13 @@ func (self *ChainManager) GetBlockHashesFromHash(hash common.Hash, max uint64) (
 	}
 	// XXX Could be optimised by using a different database which only holds hashes (i.e., linked list)
 	for i := uint64(0); i < max; i++ {
-		parentHash := block.Header().ParentHash
-		block = self.GetBlock(parentHash)
+		block = self.GetBlock(block.ParentHash())
 		if block == nil {
 			break
 		}
 
 		chain = append(chain, block.Hash())
-		if block.Header().Number.Cmp(common.Big0) <= 0 {
+		if block.Number().Cmp(common.Big0) <= 0 {
 			break
 		}
 	}