chiark / gitweb /
Use %m instead of strerror(errno) where appropiate
[elogind.git] / src / shared / strv.h
index b356d034c6df6734ef74f636bbe677a7f30cb0f3..e26ab828d2598922a1a2b2148d5d8624ea142988 100644 (file)
@@ -119,3 +119,15 @@ void strv_print(char **l);
         })
 
 #define STR_IN_SET(x, ...) strv_contains(STRV_MAKE(__VA_ARGS__), x)
+
+#define FOREACH_STRING(x, ...)                               \
+        for (char **_l = ({                                  \
+                char **_ll = STRV_MAKE(__VA_ARGS__);         \
+                x = _ll ? _ll[0] : NULL;                     \
+                _ll;                                         \
+        });                                                  \
+        _l && *_l;                                           \
+        x = ({                                               \
+                _l ++;                                       \
+                _l[0];                                       \
+        }))