[PATCH 1/2] list.h: Fix list_for_each_entry_safe()
Tiago Vignatti
tiago.vignatti at nokia.com
Mon Jun 14 07:52:58 PDT 2010
On Mon, Jun 14, 2010 at 03:25:22PM +0200, ext Kristian H�gsberg wrote:
> Can't use next as a macro argument since we're accessing the .next field
> of struct list.
> ---
> include/list.h | 6 +++---
> 1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/include/list.h b/include/list.h
> index 89dc29d..4ce20a8 100644
> --- a/include/list.h
> +++ b/include/list.h
> @@ -94,10 +94,10 @@ list_is_empty(struct list *head)
> &pos->member != (head); \
> pos = __container_of(pos->member.next, pos, member))
>
> -#define list_for_each_entry_safe(pos, next, head, member) \
> +#define list_for_each_entry_safe(pos, tmp, head, member) \
> for (pos = __container_of((head)->next, pos, member), \
> - next = __container_of(pos->member.next, pos, member); \
> + tmp = __container_of(pos->member.next, pos, member); \
> &pos->member != (head); \
> - pos = next, next = __container_of(next->member.next, next, member))
> + pos = tmp, tmp = __container_of(pos->member.next, tmp, member))
>
> #endif
Kristian, doesn't make sense then to use inline function here instead keep
juggling with the names?
Tiago
More information about the xorg-devel
mailing list