From 35bf5eaccc8d58b593af674f4d16e1dde6560c8e Mon Sep 17 00:00:00 2001
From: Yuhang Qiu <iamqyh@gmail.com>
Date: Tue, 31 Oct 2023 16:57:32 +0800
Subject: [PATCH] Simplify xlogreader.c with XLogRec* macros.

These were missed in commit 3f1ce97.
---
 src/backend/access/transam/xlogreader.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/src/backend/access/transam/xlogreader.c b/src/backend/access/transam/xlogreader.c
index e0baa86bd3..ae3d766eda 100644
--- a/src/backend/access/transam/xlogreader.c
+++ b/src/backend/access/transam/xlogreader.c
@@ -1981,7 +1981,7 @@ XLogRecGetBlockTagExtended(XLogReaderState *record, uint8 block_id,
 	if (!XLogRecHasBlockRef(record, block_id))
 		return false;
 
-	bkpb = &record->record->blocks[block_id];
+	bkpb = XLogRecGetBlock(record, block_id);
 	if (rlocator)
 		*rlocator = bkpb->rlocator;
 	if (forknum)
@@ -2003,11 +2003,10 @@ XLogRecGetBlockData(XLogReaderState *record, uint8 block_id, Size *len)
 {
 	DecodedBkpBlock *bkpb;
 
-	if (block_id > record->record->max_block_id ||
-		!record->record->blocks[block_id].in_use)
+	if (!XLogRecHasBlockRef(record, block_id))
 		return NULL;
 
-	bkpb = &record->record->blocks[block_id];
+	bkpb = XLogRecGetBlock(record, block_id);
 
 	if (!bkpb->has_data)
 	{
@@ -2036,8 +2035,7 @@ RestoreBlockImage(XLogReaderState *record, uint8 block_id, char *page)
 	char	   *ptr;
 	PGAlignedBlock tmp;
 
-	if (block_id > record->record->max_block_id ||
-		!record->record->blocks[block_id].in_use)
+	if (!XLogRecHasBlockRef(record, block_id))
 	{
 		report_invalid_record(record,
 							  "could not restore image at %X/%X with invalid block %d specified",
@@ -2045,7 +2043,7 @@ RestoreBlockImage(XLogReaderState *record, uint8 block_id, char *page)
 							  block_id);
 		return false;
 	}
-	if (!record->record->blocks[block_id].has_image)
+	if (!XLogRecHasBlockImage(record, block_id))
 	{
 		report_invalid_record(record, "could not restore image at %X/%X with invalid state, block %d",
 							  LSN_FORMAT_ARGS(record->ReadRecPtr),
@@ -2053,7 +2051,7 @@ RestoreBlockImage(XLogReaderState *record, uint8 block_id, char *page)
 		return false;
 	}
 
-	bkpb = &record->record->blocks[block_id];
+	bkpb = XLogRecGetBlock(record, block_id);
 	ptr = bkpb->bkp_image;
 
 	if (BKPIMAGE_COMPRESSED(bkpb->bimg_info))
-- 
2.39.3

