summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/itree.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/itree.c b/src/itree.c
index bd3e62a374a..ecf7d67422a 100644
--- a/src/itree.c
+++ b/src/itree.c
@@ -817,14 +817,13 @@ itree_remove_fix (struct itree_tree *tree,
{
struct itree_node *other = parent->right;
- if (null_safe_is_red (other)) /* case 1.a */
+ if (other->red) /* case 1.a */
{
other->red = false;
parent->red = true;
itree_rotate_left (tree, parent);
other = parent->right;
}
- eassume (other != NULL);
if (null_safe_is_black (other->left) /* 2.a */
&& null_safe_is_black (other->right))
@@ -855,14 +854,13 @@ itree_remove_fix (struct itree_tree *tree,
{
struct itree_node *other = parent->left;
- if (null_safe_is_red (other)) /* 1.b */
+ if (other->red) /* 1.b */
{
other->red = false;
parent->red = true;
itree_rotate_right (tree, parent);
other = parent->left;
}
- eassume (other != NULL);
if (null_safe_is_black (other->right) /* 2.b */
&& null_safe_is_black (other->left))