From: phk Date: Fri, 30 Jun 2006 20:21:15 +0000 (+0000) Subject: Add TAILQ_FOREACH_SAFE() X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=105640c39feef314657b4f894b623b8da74b6315;p=varnish Add TAILQ_FOREACH_SAFE() git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@275 d4fa192b-c00b-0410-8231-f00ffab90ce4 --- diff --git a/varnish-cache/include/queue.h b/varnish-cache/include/queue.h index b071813d..b87879ea 100644 --- a/varnish-cache/include/queue.h +++ b/varnish-cache/include/queue.h @@ -496,6 +496,11 @@ struct { \ (var); \ (var) = ((var)->field.tqe_next)) +#define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ + for ((var) = TAILQ_FIRST((head)); \ + (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ + (var) = (tvar)) + #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ (var); \