summary refs log tree commit diff
diff options
context:
space:
mode:
authorRichard Nyberg <rnyberg@murmeldjur.se>2006-01-06 18:49:47 +0000
committerRichard Nyberg <rnyberg@murmeldjur.se>2006-01-06 18:49:47 +0000
commit74b665efe18365fabac87bfbaa34e1e2fb815c1d (patch)
tree0b0fc6e3cd12a7f1b735457b15966aade843d424
parent75e9db3b26b09dd17171068cd43a5411760beb5d (diff)
downloadbtpd-74b665efe18365fabac87bfbaa34e1e2fb815c1d.tar.gz
btpd-74b665efe18365fabac87bfbaa34e1e2fb815c1d.zip
Added BTPDQ_FOREACH_MUTABLE list macro.
-rw-r--r--btpd/queue.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/btpd/queue.h b/btpd/queue.h
index 4e84ff4..0149729 100644
--- a/btpd/queue.h
+++ b/btpd/queue.h
@@ -41,6 +41,11 @@ struct {                                                                \
             (var);                                                      \
             (var) = BTPDQ_NEXT((var), field))
 
+#define BTPDQ_FOREACH_MUTABLE(var, head, field, nvar)                   \
+        for ((var) = BTPDQ_FIRST((head));                               \
+             (var) && ((nvar) = BTPDQ_NEXT((var), field), (var));       \
+             (var) = (nvar))
+
 #define BTPDQ_INIT(head) do {                                           \
         BTPDQ_FIRST((head)) = NULL;                                     \
         (head)->tqh_last = &BTPDQ_FIRST((head));                        \