From 60fb4821f883636dad9a404fd3d2fcdb0e48e10c Mon Sep 17 00:00:00 2001 From: Renaud G Date: Wed, 18 Dec 2019 01:00:52 +0100 Subject: Fix mergenode.cpp --- node/mergenode.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/node/mergenode.cpp b/node/mergenode.cpp index 15f2fa7..575613f 100644 --- a/node/mergenode.cpp +++ b/node/mergenode.cpp @@ -40,22 +40,25 @@ void MergeNode::run(ExecutionNode* previous) for(auto start : *m_startList) { ExecutionNode* last= getLatestNode(start); - if(nullptr == last || nullptr == previousLast) + if(nullptr == last) continue; auto startResult= start->getResult(); if(nullptr == startResult) continue; - startResult->setPrevious(previousLast->getResult()); - previousLast->setNextNode(start); + if(nullptr != previousLast) + { + startResult->setPrevious(previousLast->getResult()); + previousLast->setNextNode(start); + } previousLast= last; Result* tmpResult= last->getResult(); while(nullptr != tmpResult) { DiceResult* dice= dynamic_cast(tmpResult); - if(nullptr == dice) + if(nullptr != dice) { ///@todo TODO improve here to set homogeneous while is really m_diceResult->setHomogeneous(false); -- cgit v1.2.3-70-g09d2