# HG changeset patch # User Igor Sysoev # Date 1168631310 0 # Node ID 68cc5e2e1a5d569a95169b1290506ede49c87779 # Parent 7058eb754ef0e7545bece40f9199bc25424296c3 make global the rbtree color handling macros diff --git a/src/core/ngx_rbtree.c b/src/core/ngx_rbtree.c --- a/src/core/ngx_rbtree.c +++ b/src/core/ngx_rbtree.c @@ -13,12 +13,6 @@ * the "Introduction to Algorithms" by Cormen, Leiserson and Rivest. */ -#define ngx_rbt_red(node) ((node)->color = 1) -#define ngx_rbt_black(node) ((node)->color = 0) -#define ngx_rbt_is_red(node) ((node)->color) -#define ngx_rbt_is_black(node) (!ngx_rbt_is_red(node)) -#define ngx_rbt_copy_color(n1, n2) (n1->color = n2->color) - static ngx_inline void ngx_rbtree_left_rotate(ngx_rbtree_node_t **root, ngx_rbtree_node_t *sentinel, ngx_rbtree_node_t *node); diff --git a/src/core/ngx_rbtree.h b/src/core/ngx_rbtree.h --- a/src/core/ngx_rbtree.h +++ b/src/core/ngx_rbtree.h @@ -50,9 +50,16 @@ void ngx_rbtree_insert_timer_value(ngx_r ngx_rbtree_node_t *node, ngx_rbtree_node_t *sentinel); +#define ngx_rbt_red(node) ((node)->color = 1) +#define ngx_rbt_black(node) ((node)->color = 0) +#define ngx_rbt_is_red(node) ((node)->color) +#define ngx_rbt_is_black(node) (!ngx_rbt_is_red(node)) +#define ngx_rbt_copy_color(n1, n2) (n1->color = n2->color) + + /* a sentinel must be black */ -#define ngx_rbtree_sentinel_init(node) node->color = 0 +#define ngx_rbtree_sentinel_init(node) ngx_rbt_black(node) static ngx_inline ngx_rbtree_node_t *