From ff398785bede2b403f8f8e6391ce07538f6cc213 Mon Sep 17 00:00:00 2001 From: Michael Weghorn Date: Thu, 22 Aug 2019 19:09:46 +0200 Subject: [PATCH] kf5backend.cxx: Use 'free()' instead of 'delete' 'strdup' doc [1] mentions: "The returned pointer must be passed to 'free' to avoid a memory leak." This silences a "Mismatched free() / delete / delete []" error that valgrind outputs. [1] https://en.cppreference.com/w/c/experimental/dynamic/strdup Change-Id: I28877be762256a7b995c09415a8ad9977b7998c4 Reviewed-on: https://gerrit.libreoffice.org/77974 Tested-by: Jenkins Reviewed-by: Michael Weghorn --- shell/source/backends/kf5be/kf5backend.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shell/source/backends/kf5be/kf5backend.cxx b/shell/source/backends/kf5be/kf5backend.cxx index a2cae6c6c4fd..f55a5150bd3f 100644 --- a/shell/source/backends/kf5be/kf5backend.cxx +++ b/shell/source/backends/kf5be/kf5backend.cxx @@ -190,7 +190,7 @@ void initQApp(std::map>& rSettings std::unique_ptr app(new QApplication(nFakeArgc, pFakeArgv)); QObject::connect(app.get(), &QObject::destroyed, app.get(), [nFakeArgc, pFakeArgv]() { for (int i = 0; i < nFakeArgc; ++i) - delete pFakeArgv[i]; + free(pFakeArgv[i]); delete[] pFakeArgv; });