aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/rbtree.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/lib/rbtree.c b/lib/rbtree.c
index ccada9abe6f..12abb8abf44 100644
--- a/lib/rbtree.c
+++ b/lib/rbtree.c
@@ -109,18 +109,15 @@ void rb_insert_color(struct rb_node *node, struct rb_root *root)
}
}
- if (parent->rb_right == node)
- {
- register struct rb_node *tmp;
+ if (parent->rb_right == node) {
__rb_rotate_left(parent, root);
- tmp = parent;
parent = node;
- node = tmp;
}
rb_set_black(parent);
rb_set_red(gparent);
__rb_rotate_right(gparent, root);
+ break;
} else {
{
register struct rb_node *uncle = gparent->rb_left;
@@ -134,18 +131,15 @@ void rb_insert_color(struct rb_node *node, struct rb_root *root)
}
}
- if (parent->rb_left == node)
- {
- register struct rb_node *tmp;
+ if (parent->rb_left == node) {
__rb_rotate_right(parent, root);
- tmp = parent;
parent = node;
- node = tmp;
}
rb_set_black(parent);
rb_set_red(gparent);
__rb_rotate_left(gparent, root);
+ break;
}
}