Skip to content

Commit

Permalink
libutils: sys/queue.h: add STAILQ_FOREACH_SAFE()
Browse files Browse the repository at this point in the history
Import macro STAILQ_FOREACH_SAFE from FreeBSD.

Signed-off-by: Jerome Forissier <[email protected]>
Reviewed-by: Joakim Bech <[email protected]>
Reviewed-by: Etienne Carriere <[email protected]>
Acked-by: Jens Wiklander <[email protected]>
  • Loading branch information
jforissier committed Nov 8, 2018
1 parent 9a731fc commit 5810998
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions lib/libutils/isoc/include/sys/queue.h
Original file line number Diff line number Diff line change
Expand Up @@ -305,6 +305,11 @@ struct { \
(var); \
(var) = ((var)->field.stqe_next))

#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \
for ((var) = STAILQ_FIRST((head)); \
(var) && ((tvar) = STAILQ_NEXT((var), field), 1); \
(var) = (tvar))

#define STAILQ_CONCAT(head1, head2) do { \
if (!STAILQ_EMPTY((head2))) { \
*(head1)->stqh_last = (head2)->stqh_first; \
Expand Down

0 comments on commit 5810998

Please sign in to comment.