From 56df72bcc6367945bc379ebabb226035c78482db Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Tue, 28 Jan 2020 10:39:16 +0100 Subject: Dispose configmgr at the end of unopkg ...so that the configmgr::Components::WriteThread (configmgr/source/components.cxx) is joined well before exit. (This should solve the issue discussed at , "tdf#129917 Use temp user profile when installing shared extensions".) Change-Id: I79004c2e7f839d80eda23eed2a1c5e8e660a58df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87592 Tested-by: Jenkins Reviewed-by: Stephan Bergmann (cherry picked from commit 9f277b2616512299ec20de0209c272527f26386b) --- desktop/source/pkgchk/unopkg/unopkg_app.cxx | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'desktop') diff --git a/desktop/source/pkgchk/unopkg/unopkg_app.cxx b/desktop/source/pkgchk/unopkg/unopkg_app.cxx index f6e4d0c19b7c..35d2bee6f5c5 100644 --- a/desktop/source/pkgchk/unopkg/unopkg_app.cxx +++ b/desktop/source/pkgchk/unopkg/unopkg_app.cxx @@ -590,6 +590,8 @@ extern "C" int unopkg_main() logger->log(LogLevel::INFO, "$1$ done.", APP_NAME); //Force to release all bridges which connect us to the child processes dp_misc::disposeBridges(xLocalComponentContext); + css::uno::Reference( + xLocalComponentContext, css::uno::UNO_QUERY_THROW)->dispose(); return 0; } catch (const ucb::CommandFailedException &e) @@ -621,6 +623,10 @@ extern "C" int unopkg_main() if (!bNoOtherErrorMsg) logger->log(LogLevel::SEVERE, "$1$ failed.", APP_NAME); dp_misc::disposeBridges(xLocalComponentContext); + if (xLocalComponentContext.is()) { + css::uno::Reference( + xLocalComponentContext, css::uno::UNO_QUERY_THROW)->dispose(); + } return 1; } -- cgit