diff --git a/core/rawdb/freezer_reinit.go b/core/rawdb/freezer_reinit.go
index ea4dd33d1d6bcaf4cd267c6bb69d580c3e380325..d6bf9ab1dd6a3bf8e7bbb7ba1eccf9f130a866e6 100644
--- a/core/rawdb/freezer_reinit.go
+++ b/core/rawdb/freezer_reinit.go
@@ -55,10 +55,10 @@ func InitDatabaseFromFreezer(db ethdb.Database) error {
 				if n >= frozen {
 					return
 				}
-				// Retrieve the block from the freezer (no need for the hash, we pull by
-				// number from the freezer). If successful, pre-cache the block hash and
-				// the individual transaction hashes for storing into the database.
-				block := ReadBlock(db, common.Hash{}, n)
+				// Retrieve the block from the freezer. If successful, pre-cache
+				// the block hash and the individual transaction hashes for storing
+				// into the database.
+				block := ReadBlock(db, ReadCanonicalHash(db, n), n)
 				if block != nil {
 					block.Hash()
 					for _, tx := range block.Transactions() {