Convert macros to static inline functions (rel.h)
authorPeter Eisentraut <[email protected]>
Fri, 7 Oct 2022 14:06:59 +0000 (16:06 +0200)
committerPeter Eisentraut <[email protected]>
Fri, 7 Oct 2022 14:16:50 +0000 (16:16 +0200)
Reviewed-by: Amul Sul <[email protected]>
Discussion: https://www.postgresql.org/message-id/flat/5b558da8-99fb-0a99-83dd-f72f05388517%40enterprisedb.com

src/include/utils/rel.h

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