Fix ft_rbtree_rotate
authorLukáš Jiřiště <gymnazium.jiriste@gmail.com>
Sat, 2 Aug 2025 14:12:22 +0000 (16:12 +0200)
committerLukáš Jiřiště <gymnazium.jiriste@gmail.com>
Sat, 2 Aug 2025 14:12:22 +0000 (16:12 +0200)
ft_struct/ft_rbtree_helpers.c

index 82147c58c3e6ce805e53e79a130ce5e25c120ede..30d5297212e58412c05fe12219e7928b84eb9fde 100644 (file)
@@ -23,9 +23,15 @@ void ft_rbtree_rotate(t_rbtree_node *node)
                node->left = parent;
                parent->right = transferred;
        }
+       if (transferred)
+               transferred->parent = parent;
        node->parent = parent->parent;
        parent->parent = node;
        if (!node->parent)
                node->tree->root = node;
+       else if (node->parent->left == parent)
+               node->parent->left = node;
+       else
+               node->parent->right = node;
        return ;
 }