From a370f655eaa98068a0749842be64b85e76f451a1 Mon Sep 17 00:00:00 2001 From: Jerome St-Louis Date: Fri, 29 Jul 2016 02:47:03 -0400 Subject: [PATCH] ecere/com/Containers/CustomAVLTree: Fixed key class confusion caused by a47aec0a06c2cf299dac23efa877bc1908fe88d7 - NOTE: We may still need a compiler fix on 'delete' operator to use proper template arg (KT rather than BT) --- ecere/src/com/containers/CustomAVLTree.ec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ecere/src/com/containers/CustomAVLTree.ec b/ecere/src/com/containers/CustomAVLTree.ec index 96fedd3..0dd34be 100644 --- a/ecere/src/com/containers/CustomAVLTree.ec +++ b/ecere/src/com/containers/CustomAVLTree.ec @@ -587,7 +587,12 @@ public: ((void (*)(void *, void *))(void *)Tclass._vTbl[__ecereVMethodID_class_OnFree])(Tclass, (((byte *)&item.key) + __ENDIAN_PAD(sizeof(void *)))); } else - delete item.key; + { + // TOFIX: delete key; // This indexes the wrong templateArg (BT instead of KT) + KT k = item.key; + delete k; + item.key = (KT)0; + } } void Free() -- 1.8.3.1