comparison engine/core/model/structures/instancetree.h @ 338:d266506ff4f9

Bug fix. It turned out the instance tree contained ghost instances, since InstanceTree.removeInstance sometimes failed. This caused those random crashes in UH. Now the InstanceTree enforces that remove/add Instance work in pairs. A new Exception is raised in case this ever goes wrong again. (InconsitencyDetected) Furthermore the removeInstancheChangeListener stuff had a fix to become reentrant. It is not clear wether this was shadowed by the aforementioned bug or was never triggered.
author phoku@33b003aa-7bff-0310-803a-e67f0ece8222
date Mon, 24 Aug 2009 18:32:03 +0000
parents 90005975cdbb
children 0fd74235b34d
comparison
equal deleted inserted replaced
337:f9aca52c7c45 338:d266506ff4f9
92 } 92 }
93 93
94 94
95 private: 95 private:
96 InstanceQuadTree m_tree; 96 InstanceQuadTree m_tree;
97 97 std::map<Instance*,InstanceTreeNode*> m_reverse;
98 }; 98 };
99 99
100 } 100 }
101 101
102 #endif 102 #endif