From 8b428c4ea54812995def2850853c0fde02a61b8f Mon Sep 17 00:00:00 2001 From: "salt.wei" Date: Thu, 14 Sep 2023 21:03:12 +0800 Subject: [PATCH] FIX: handling for some memory leak JIRA: none. find by self test Signed-off-by: salt.wei Change-Id: I450e872039331ccbbf885540dfa526704afe1c20 --- src/libslic3r/ExtrusionEntityCollection.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/libslic3r/ExtrusionEntityCollection.cpp b/src/libslic3r/ExtrusionEntityCollection.cpp index 391ac2d58..ed6af12b7 100644 --- a/src/libslic3r/ExtrusionEntityCollection.cpp +++ b/src/libslic3r/ExtrusionEntityCollection.cpp @@ -26,6 +26,7 @@ ExtrusionEntityCollection::ExtrusionEntityCollection(const ExtrusionPaths &paths ExtrusionEntityCollection& ExtrusionEntityCollection::operator=(const ExtrusionEntityCollection &other) { + clear(); this->entities = other.entities; for (size_t i = 0; i < this->entities.size(); ++i) this->entities[i] = this->entities[i]->clone(); @@ -58,10 +59,7 @@ ExtrusionEntityCollection::operator ExtrusionPaths() const ExtrusionEntity* ExtrusionEntityCollection::clone() const { - ExtrusionEntityCollection* coll = new ExtrusionEntityCollection(*this); - for (size_t i = 0; i < coll->entities.size(); ++i) - coll->entities[i] = this->entities[i]->clone(); - return coll; + return new ExtrusionEntityCollection(*this); } void ExtrusionEntityCollection::reverse()