Convert macros to static inline functions (rel.h)

Reviewed-by: Amul Sul <sulamul@gmail.com>
Discussion: https://www.postgresql.org/message-id/flat/5b558da8-99fb-0a99-83dd-f72f05388517%40enterprisedb.com
This commit is contained in:
Peter Eisentraut 2022-10-07 16:06:59 +02:00
parent f14aad5169
commit 3edc71ec04
1 changed files with 10 additions and 11 deletions

View File

@ -572,22 +572,21 @@ RelationGetSmgr(Relation rel)
smgrsetowner(&(rel->rd_smgr), smgropen(rel->rd_locator, rel->rd_backend)); smgrsetowner(&(rel->rd_smgr), smgropen(rel->rd_locator, rel->rd_backend));
return rel->rd_smgr; return rel->rd_smgr;
} }
#endif
/* /*
* RelationCloseSmgr * RelationCloseSmgr
* Close the relation at the smgr level, if not already done. * Close the relation at the smgr level, if not already done.
*
* Note: smgrclose should unhook from owner pointer, hence the Assert.
*/ */
#define RelationCloseSmgr(relation) \ static inline void
do { \ RelationCloseSmgr(Relation relation)
if ((relation)->rd_smgr != NULL) \ {
{ \ if (relation->rd_smgr != NULL)
smgrclose((relation)->rd_smgr); \ smgrclose(relation->rd_smgr);
Assert((relation)->rd_smgr == NULL); \
} \ /* smgrclose should unhook from owner pointer */
} while (0) Assert(relation->rd_smgr == NULL);
}
#endif /* !FRONTEND */
/* /*
* RelationGetTargetBlock * RelationGetTargetBlock