mirror of
https://gitlab.labs.nic.cz/labs/bird.git
synced 2024-05-11 16:54:54 +00:00
Merge commit '0bb04d5390f21b0c96fc4894ba5d5510c541f0ef' into HEAD
This commit is contained in:
10
lib/lists.c
10
lib/lists.c
@@ -35,10 +35,10 @@ check_list(list *l, node *n)
|
||||
if (!l)
|
||||
{
|
||||
ASSERT_DIE(n);
|
||||
ASSERT_DIE(n->prev);
|
||||
|
||||
node *nn = n;
|
||||
while (nn->prev)
|
||||
nn = nn->prev;
|
||||
do { nn = nn->prev; } while (nn->prev);
|
||||
|
||||
l = SKIP_BACK(list, head_node, nn);
|
||||
}
|
||||
@@ -61,7 +61,7 @@ check_list(list *l, node *n)
|
||||
}
|
||||
|
||||
ASSERT_DIE(cur == &(l->tail_node));
|
||||
ASSERT_DIE(!n || (seen == 1) || (n == &l->head_node) || (n == &l->tail_node));
|
||||
ASSERT_DIE(!n || (seen == 1));
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -121,7 +121,7 @@ add_head(list *l, node *n)
|
||||
LIST_INLINE void
|
||||
insert_node(node *n, node *after)
|
||||
{
|
||||
EXPENSIVE_CHECK(check_list(NULL, after));
|
||||
EXPENSIVE_CHECK((after->prev == NULL) || check_list(NULL, after));
|
||||
ASSUME(n->prev == NULL);
|
||||
ASSUME(n->next == NULL);
|
||||
|
||||
@@ -142,7 +142,7 @@ insert_node(node *n, node *after)
|
||||
LIST_INLINE void
|
||||
rem_node(node *n)
|
||||
{
|
||||
EXPENSIVE_CHECK((n == n->prev) && (n == n->next) || check_list(NULL, n));
|
||||
EXPENSIVE_CHECK((n->prev == n) && (n->next == n) || check_list(NULL, n));
|
||||
|
||||
node *z = n->prev;
|
||||
node *x = n->next;
|
||||
|
||||
Reference in New Issue
Block a user