[BACK]Return to redblack.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / sudo

Diff for /src/usr.bin/sudo/Attic/redblack.c between version 1.5 and 1.6

version 1.5, 2010/03/04 12:21:36 version 1.6, 2013/02/04 15:29:00
Line 418 
Line 418 
 {  {
     struct rbnode *sibling;      struct rbnode *sibling;
   
     while (node->color == black && node != rbroot(tree)) {      while (node->color == black && node != rbfirst(tree)) {
         if (node == node->parent->left) {          if (node == node->parent->left) {
             sibling = node->parent->right;              sibling = node->parent->right;
             if (sibling->color == red) {              if (sibling->color == red) {
Line 441 
Line 441 
                 node->parent->color = black;                  node->parent->color = black;
                 sibling->right->color = black;                  sibling->right->color = black;
                 rotate_left(tree, node->parent);                  rotate_left(tree, node->parent);
                 node = rbroot(tree); /* exit loop */                  node = rbfirst(tree); /* exit loop */
             }              }
         } else { /* if (node == node->parent->right) */          } else { /* if (node == node->parent->right) */
             sibling = node->parent->left;              sibling = node->parent->left;
Line 465 
Line 465 
                 node->parent->color = black;                  node->parent->color = black;
                 sibling->left->color = black;                  sibling->left->color = black;
                 rotate_right(tree, node->parent);                  rotate_right(tree, node->parent);
                 node = rbroot(tree); /* exit loop */                  node = rbfirst(tree); /* exit loop */
             }              }
         }          }
     }      }

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.6