From e9bd4f679f3816373b79b51f644bd2ce8d04880f Mon Sep 17 00:00:00 2001 From: wmayer Date: Sun, 7 May 2017 16:21:41 +0200 Subject: [PATCH] fix memory leak in DocumentObject::execute and return ASAP on errors --- src/App/DocumentObject.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/App/DocumentObject.cpp b/src/App/DocumentObject.cpp index d003bfb32b..cce8557709 100644 --- a/src/App/DocumentObject.cpp +++ b/src/App/DocumentObject.cpp @@ -82,8 +82,11 @@ DocumentObjectExecReturn *DocumentObject::execute(void) { //call all extensions auto vector = getExtensionsDerivedFromType(); - for(auto ext : vector) - ext->extensionExecute(); + for(auto ext : vector) { + auto ret = ext->extensionExecute(); + if (ret != StdReturn) + return ret; + } return StdReturn; }