summaryrefslogtreecommitdiff
path: root/src/basic/dirent-util.h
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-12-07 12:52:58 +0100
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2021-12-15 22:50:00 +0100
commitaf3b864d76cf916a026b7877099791811b348fdf (patch)
tree40db7161280edc4dcc24b8a0cd20514f45a3ea1f /src/basic/dirent-util.h
parentc7f0d9e5acef3f62db3640d5ab7446241c022b35 (diff)
downloadsystemd-af3b864d76cf916a026b7877099791811b348fdf.tar.gz
Define FOREACH_DIRENT through FOREACH_DIRENT_ALL
As in the previous commit, 'de' is used as the iterator variable name.
Diffstat (limited to 'src/basic/dirent-util.h')
-rw-r--r--src/basic/dirent-util.h17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/basic/dirent-util.h b/src/basic/dirent-util.h
index 2dc5dae1e1..5fde9043a3 100644
--- a/src/basic/dirent-util.h
+++ b/src/basic/dirent-util.h
@@ -14,17 +14,6 @@ bool dirent_is_file_with_suffix(const struct dirent *de, const char *suffix) _pu
struct dirent *readdir_ensure_type(DIR *d);
struct dirent *readdir_no_dot(DIR *dirp);
-#define FOREACH_DIRENT(de, d, on_error) \
- for (de = readdir_ensure_type(d);; de = readdir_ensure_type(d)) \
- if (!de) { \
- if (errno > 0) { \
- on_error; \
- } \
- break; \
- } else if (hidden_or_backup_file((de)->d_name)) \
- continue; \
- else
-
#define FOREACH_DIRENT_ALL(de, d, on_error) \
for (struct dirent *(de) = readdir_ensure_type(d);; (de) = readdir_ensure_type(d)) \
if (!de) { \
@@ -34,6 +23,12 @@ struct dirent *readdir_no_dot(DIR *dirp);
break; \
} else
+#define FOREACH_DIRENT(de, d, on_error) \
+ FOREACH_DIRENT_ALL(de, d, on_error) \
+ if (hidden_or_backup_file((de)->d_name)) \
+ continue; \
+ else
+
/* Maximum space one dirent structure might require at most */
#define DIRENT_SIZE_MAX CONST_MAX(sizeof(struct dirent), offsetof(struct dirent, d_name) + NAME_MAX + 1)