From c0dcd388b83d73f704cb42ab121fb31a7cb867da Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Mon, 1 Apr 2024 15:39:00 +0100 Subject: [PATCH] lok preinit: don't re-synchronize extensions on each child start. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We should sort out our extensions, if at all, at pre-init time. This should save ~4% of CPU in a week-long profile of a COOL server. From Desktop::Main's SynchronizeExtensionRepositories. Change-Id: I2760de26635723492dfa5a52005ee90623337bee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165622 Tested-by: Jenkins Reviewed-by: Caolán McNamara --- desktop/inc/app.hxx | 2 +- desktop/source/lib/init.cxx | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/desktop/inc/app.hxx b/desktop/inc/app.hxx index 9d6ac9864a52..0c96240f1b0d 100644 --- a/desktop/inc/app.hxx +++ b/desktop/inc/app.hxx @@ -69,7 +69,7 @@ class Desktop final : public Application Desktop(); virtual ~Desktop() override; - virtual int Main( ) override; + virtual int Main() override; virtual void Init() override; virtual void InitFinished() override; virtual void DeInit() override; diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index cac261e9bcac..52057cd2645d 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -7509,6 +7509,9 @@ static void preloadData() if(bAbort) std::cerr << "CheckExtensionDependencies failed" << std::endl; + // inhibit forced 2nd synchronization from Main + ::rtl::Bootstrap::set( "DISABLE_EXTENSION_SYNCHRONIZATION", "true"); + std::cerr << "Preload textencodings"; // sal_textenc // Use RTL_TEXTENCODING_MS_1250 to trigger Impl_getTextEncodingData // to dlopen sal_textenclo