summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWarner Losh <imp@FreeBSD.org>1999-10-30 04:18:59 +0000
committerWarner Losh <imp@FreeBSD.org>1999-10-30 04:18:59 +0000
commit1c6972cf901bc9353c445d55f23bbe92d54e3dfe (patch)
tree99c170c44fccd62f63abdeece97e6d96933a961e
parentf9eb66d73a53774bb18592fca3a17924eac55cfc (diff)
Notes
-rw-r--r--sys/sys/queue.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/sys/queue.h b/sys/sys/queue.h
index 0da19f7c9a89..be4c8b7e7b54 100644
--- a/sys/sys/queue.h
+++ b/sys/sys/queue.h
@@ -224,6 +224,10 @@ struct { \
(head)->stqh_last = &(head)->stqh_first; \
} while (0)
+#define STAILQ_REMOVE_HEAD_UNTIL(head, elm, field) do { \
+ if (((head)->stqh_first = (elm)->field.stqe_next) == NULL) \
+ (head)->stqh_last = &(head)->stqh_first; \
+} while (0)
#define STAILQ_REMOVE(head, elm, type, field) do { \
if ((head)->stqh_first == (elm)) { \