(removeElement:): Fix bug whereby the deleted node's parent still had

the deleted node as a right child.  (Reported by Stephen Peters
<SPETERS@us.oracle.com>).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@347 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
mccallum 1995-04-12 15:34:39 +00:00
parent 39fbf08e75
commit e5556679e7

View file

@ -496,7 +496,8 @@ static id nilBinaryTreeNode;
else
x = [y rightNode];
[x setParentNode:[y parentNode]];
if (x != [self nilNode])
[x setParentNode:[y parentNode]];
if ([y parentNode] == [self nilNode])
_contents_root = x;
@ -517,7 +518,7 @@ static id nilBinaryTreeNode;
if (oldElement.id_u == [[oldElement.id_u parentNode] leftNode])
[[oldElement.id_u parentNode] setLeftNode:y];
else
[[oldElement.id_u parentNode] setRightNode:oldElement.id_u];
[[oldElement.id_u parentNode] setRightNode:y];
[[oldElement.id_u leftNode] setParentNode:y];
[[oldElement.id_u rightNode] setParentNode:y];
}