diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2010-11-04 17:22:43 +0100 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2010-11-04 17:22:43 +0100 |
commit | d5356072ac18d5b0eb12f14afca6bfbea702dda2 (patch) | |
tree | 3013ad55e7750ede3fdcae459a2fb1b72b60614a /lib | |
parent | d3209d939d4d0d8801432f212edd4302a7d03633 (diff) | |
download | bird-d5356072ac18d5b0eb12f14afca6bfbea702dda2.tar bird-d5356072ac18d5b0eb12f14afca6bfbea702dda2.zip |
Fixes a bug in LSA update of large LSAs.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/lists.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/lists.h b/lib/lists.h index 342dfd6..6fab12c 100644 --- a/lib/lists.h +++ b/lib/lists.h @@ -33,10 +33,10 @@ typedef struct list { /* In fact two overlayed nodes */ #define NODE (node *) #define HEAD(list) ((void *)((list).head)) #define TAIL(list) ((void *)((list).tail)) -#define WALK_LIST(n,list) for(n=HEAD(list);(NODE (n))->next; \ - n=(void *)((NODE (n))->next)) +#define NODE_NEXT(n) ((void *)((NODE (n))->next)) +#define WALK_LIST(n,list) for(n=HEAD(list);(NODE (n))->next; n=NODE_NEXT(n)) #define WALK_LIST_DELSAFE(n,nxt,list) \ - for(n=HEAD(list); nxt=(void *)((NODE (n))->next); n=(void *) nxt) + for(n=HEAD(list); nxt=NODE_NEXT(n); n=(void *) nxt) /* WALK_LIST_FIRST supposes that called code removes each processed node */ #define WALK_LIST_FIRST(n,list) \ while(n=HEAD(list), (NODE (n))->next) |