From 9a82fb6542e870705a4222b29ae3f22237fdf311 Mon Sep 17 00:00:00 2001 From: Timo Kokkonen Date: Mon, 12 Apr 2010 20:31:57 +0300 Subject: [PATCH] quadtree: quadtree_del: Fix tree integrity bug When a root node is deleted and new tree is built under the new root, the new root node needs to have its parent set to null. Signed-off-by: Timo Kokkonen --- quadtree.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/quadtree.c b/quadtree.c index 8efd8ad..a914f66 100644 --- a/quadtree.c +++ b/quadtree.c @@ -150,7 +150,7 @@ _quadtree_reposition_reqursively(struct quadtree *root, { int i; - validate_tree(node); + validate_tree(root); /* First remove all children, if any */ @@ -199,6 +199,7 @@ struct quadtree *quadtree_del(struct quadtree *node, if (!parent) { parent = node->child[i]; + parent->parent = 0; continue; } _quadtree_reposition_reqursively(parent, -- 2.44.0