From ff92ac7929fca940aca1b1045b7a29d180e84a24 Mon Sep 17 00:00:00 2001 From: Eberhard Graether Date: Tue, 28 Aug 2018 16:05:34 +0200 Subject: [PATCH] logic: Fixed crash on self referencing connections in HierarchyCache --- src/lib/data/HierarchyCache.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/lib/data/HierarchyCache.cpp b/src/lib/data/HierarchyCache.cpp index ddfc9b9c..dfb1ffbd 100644 --- a/src/lib/data/HierarchyCache.cpp +++ b/src/lib/data/HierarchyCache.cpp @@ -148,6 +148,11 @@ void HierarchyCache::clear() void HierarchyCache::createConnection( Id edgeId, Id fromId, Id toId, bool sourceVisible, bool sourceImplicit, bool targetImplicit) { + if (fromId == toId) + { + return; + } + HierarchyNode* from = createNode(fromId); HierarchyNode* to = createNode(toId); @@ -163,6 +168,11 @@ void HierarchyCache::createConnection( void HierarchyCache::createInheritance(Id edgeId, Id fromId, Id toId) { + if (fromId == toId) + { + return; + } + HierarchyNode* from = createNode(fromId); HierarchyNode* to = createNode(toId);