aboutsummaryrefslogtreecommitdiffhomepage
path: root/rbtree.h
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2012-11-19 20:42:59 +0100
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2012-11-20 06:07:33 +0100
commit6403c951636a24f31368e91da2439c4fb47ff4c3 (patch)
tree3f2be67fded08cd3ae02bc7572c8f3406d6db98b /rbtree.h
parent2869e942b4c30456826f0f61904d5b8e8f0b9abf (diff)
downloadsciteco-6403c951636a24f31368e91da2439c4fb47ff4c3.tar.gz
fixed cleaning up red black trees: nodes must be explicitly removed
Diffstat (limited to 'rbtree.h')
-rw-r--r--rbtree.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/rbtree.h b/rbtree.h
index bb3d8f4..f1e920a 100644
--- a/rbtree.h
+++ b/rbtree.h
@@ -53,10 +53,12 @@ public:
virtual
~RBTree()
{
- RBEntry *cur, *next;
+ RBEntry *cur;
- RB_FOREACH_SAFE(cur, Tree, &head, next)
+ while ((cur = min())) {
+ remove(cur);
delete cur;
+ }
}
inline RBEntry *