summaryrefslogtreecommitdiff
path: root/src/basic/memory-util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/basic/memory-util.h')
-rw-r--r--src/basic/memory-util.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/basic/memory-util.h b/src/basic/memory-util.h
index d03d52cd43..d26a0918e1 100644
--- a/src/basic/memory-util.h
+++ b/src/basic/memory-util.h
@@ -113,13 +113,13 @@ static inline void erase_char(char *p) {
}
/* An automatic _cleanup_-like logic for destroy arrays (i.e. pointers + size) when leaving scope */
-struct ArrayCleanup {
+typedef struct ArrayCleanup {
void **parray;
size_t *pn;
free_array_func_t pfunc;
-};
+} ArrayCleanup;
-static inline void array_cleanup(struct ArrayCleanup *c) {
+static inline void array_cleanup(const ArrayCleanup *c) {
assert(c);
assert(!c->parray == !c->pn);
@@ -137,7 +137,7 @@ static inline void array_cleanup(struct ArrayCleanup *c) {
}
#define CLEANUP_ARRAY(array, n, func) \
- _cleanup_(array_cleanup) _unused_ struct ArrayCleanup CONCATENATE(_cleanup_array_, UNIQ) = { \
+ _cleanup_(array_cleanup) _unused_ const ArrayCleanup CONCATENATE(_cleanup_array_, UNIQ) = { \
.parray = (void**) &(array), \
.pn = &(n), \
.pfunc = (free_array_func_t) ({ \