From fffffff98dd9154b0f25fdc3c84d9574501fbae4 Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@esi-group.com> Date: Thu, 21 Dec 2023 17:28:08 +0100 Subject: [PATCH] COMP: clear out memory in argList (#3065) - exit in constructor bypasses RAII --- src/OpenFOAM/global/argList/argList.C | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/OpenFOAM/global/argList/argList.C b/src/OpenFOAM/global/argList/argList.C index a94437514a6..d5a4cc5953b 100644 --- a/src/OpenFOAM/global/argList/argList.C +++ b/src/OpenFOAM/global/argList/argList.C @@ -1082,6 +1082,9 @@ Foam::argList::argList << " -help-full' for extended usage" << nl << nl; + args_.clear(); + options_.clearStorage(); + UPstream::exit(1); // works for serial and parallel } @@ -1242,6 +1245,9 @@ void Foam::argList::parse if (quickExit) { + args_.clear(); + options_.clearStorage(); + std::exit(0); } } @@ -1252,6 +1258,9 @@ void Foam::argList::parse foamVersion::printBuildInfo(Info.stdStream(), false); FatalError.write(Info, false); + args_.clear(); + options_.clearStorage(); + UPstream::exit(1); // works for serial and parallel } -- GitLab