chiark / gitweb /
util: modernize a few functions with automatic cleanup variables
[elogind.git] / src / shared / macro.h
index 4595750394d8a2a5d43c68d27d46eb0d1ec55a64..eb9a8c0a72c1233247b875cd8e8617b093864bfd 100644 (file)
@@ -187,4 +187,8 @@ static inline size_t IOVEC_INCREMENT(struct iovec *i, unsigned n, size_t k) {
         return k;
 }
 
+#define _cleanup_free_ __attribute__((cleanup(freep)))
+#define _cleanup_fclose_ __attribute__((cleanup(fclosep)))
+#define _cleanup_close_ __attribute__((cleanup(closep)))
+
 #include "log.h"