From f08799d49cdb07869a0275b59076747495bc19c8 Mon Sep 17 00:00:00 2001 From: andreja6 Date: Fri, 13 Mar 2020 18:06:55 -0700 Subject: [PATCH] Fixed memory error --- PartInstance.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/PartInstance.cpp b/PartInstance.cpp index e71c224..cc95f0f 100644 --- a/PartInstance.cpp +++ b/PartInstance.cpp @@ -76,19 +76,20 @@ void PartInstance::postRender(RenderDevice *rd) } } -void PartInstance::setParent(Instance* parent) +void PartInstance::setParent(Instance* prnt) { - Instance * cparent = this->parent; + Instance * cparent = getParent(); while(cparent != NULL) { - if(WorkspaceInstance* workspace = dynamic_cast(parent)) + if(WorkspaceInstance* workspace = dynamic_cast(cparent)) { + std::cout << "Removed from partarray " << std::endl; workspace->partObjects.erase(std::remove(workspace->partObjects.begin(), workspace->partObjects.end(), this), workspace->partObjects.end()); break; } cparent = cparent->getParent(); } - Instance::setParent(parent); + Instance::setParent(prnt); while(parent != NULL) { if(WorkspaceInstance* workspace = dynamic_cast(parent))