extensions/source/update/check/updatecheck.cxx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
New commits: commit 05ab836cf3001093a6e375bcb3e4654bbedcfa52 Author: Julien Nabet <[email protected]> AuthorDate: Fri May 22 10:03:15 2020 +0200 Commit: Julien Nabet <[email protected]> CommitDate: Sat May 23 09:11:34 2020 +0200 Fix leak in extensions/updatecheck Change-Id: I693d32c6f1136dbe500b5390954fc77444144dbd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94658 Tested-by: Jenkins Reviewed-by: Julien Nabet <[email protected]> diff --git a/extensions/source/update/check/updatecheck.cxx b/extensions/source/update/check/updatecheck.cxx index a4e18c193046..217c05986129 100644 --- a/extensions/source/update/check/updatecheck.cxx +++ b/extensions/source/update/check/updatecheck.cxx @@ -17,6 +17,7 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ +#include <comphelper/scopeguard.hxx> #include <config_folders.h> #include "updatecheck.hxx" @@ -136,6 +137,12 @@ OUString getImageFromFileName(const OUString& aFile) nullptr, &hOut, nullptr // [out] File handles for redirected I/O ); + // Create a guard to ensure correct cleanup in its dtor in any case + comphelper::ScopeGuard g([hOut, hProcess] () { + osl_closeFile(hOut); + osl_freeProcessHandle(hProcess); + }); + if( osl_Process_E_None == rc ) { oslProcessInfo aInfo; @@ -169,9 +176,6 @@ OUString getImageFromFileName(const OUString& aFile) return aImageName; } } - - osl_closeFile(hOut); - osl_freeProcessHandle(hProcess); } } #endif _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
