diff options
author | Luboš Luňák <l.lunak@collabora.com> | 2022-03-05 11:23:38 +0100 |
---|---|---|
committer | Luboš Luňák <l.lunak@collabora.com> | 2022-03-07 15:37:22 +0100 |
commit | 4256c764aee0777770466115a97420d9b55c23ac (patch) | |
tree | 9452b0dc5c84355826d070ad3eccba498ef9c5e8 /writerfilter | |
parent | 58c6a36bfcc853ca9da81fbc2d071fa50585655b (diff) |
do not pass XComponentContext to officecfg::...::get() calls
It's used only for the ConfigurationWrapper singleton, so it's used
only the first time and then ignored. It also causes calls to
comphelper::getProcessComponentContext() for every single invocation
despite the value not being needed, and the calls may not be cheap
(it's ~5% CPU during ODS save because relatively frequent calls
to officecfg::Office::Common::Save::ODF::DefaultVersion::get()).
Change-Id: I02c17a1a9cb498aeef220ddd5a0bde5523cb0ffb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131056
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 6 | ||||
-rw-r--r-- | writerfilter/source/dmapper/OLEHandler.cxx | 8 | ||||
-rw-r--r-- | writerfilter/source/dmapper/OLEHandler.hxx | 2 |
3 files changed, 8 insertions, 8 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index 2475da8baa5b..882bd28086a6 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -318,7 +318,7 @@ DomainMapper_Impl::DomainMapper_Impl( m_xTextDocument( xModel, uno::UNO_QUERY ), m_xTextFactory( xModel, uno::UNO_QUERY ), m_xComponentContext( xContext ), - m_bForceGenericFields(!utl::ConfigManager::IsFuzzing() && officecfg::Office::Common::Filter::Microsoft::Import::ForceImportWWFieldsAsGenericFields::get(m_xComponentContext)), + m_bForceGenericFields(!utl::ConfigManager::IsFuzzing() && officecfg::Office::Common::Filter::Microsoft::Import::ForceImportWWFieldsAsGenericFields::get()), m_bSetUserFieldContent( false ), m_bSetCitation( false ), m_bSetDateValue( false ), @@ -418,7 +418,7 @@ DomainMapper_Impl::DomainMapper_Impl( getTableManager( ).setHandler(m_pTableHandler); getTableManager( ).startLevel(); - m_bUsingEnhancedFields = !utl::ConfigManager::IsFuzzing() && officecfg::Office::Common::Filter::Microsoft::Import::ImportWWFieldsAsEnhancedFields::get(m_xComponentContext); + m_bUsingEnhancedFields = !utl::ConfigManager::IsFuzzing() && officecfg::Office::Common::Filter::Microsoft::Import::ImportWWFieldsAsEnhancedFields::get(); m_pSdtHelper = new SdtHelper(*this, m_xComponentContext); @@ -2615,7 +2615,7 @@ void DomainMapper_Impl::appendOLE( const OUString& rStreamName, const std::share uno::Reference< text::XTextContent > xOLE( m_xTextFactory->createInstance("com.sun.star.text.TextEmbeddedObject"), uno::UNO_QUERY_THROW ); uno::Reference< beans::XPropertySet > xOLEProperties(xOLE, uno::UNO_QUERY_THROW); - OUString aCLSID = pOLEHandler->getCLSID(m_xComponentContext); + OUString aCLSID = pOLEHandler->getCLSID(); if (aCLSID.isEmpty()) xOLEProperties->setPropertyValue(getPropertyName( PROP_STREAM_NAME ), uno::makeAny( rStreamName )); diff --git a/writerfilter/source/dmapper/OLEHandler.cxx b/writerfilter/source/dmapper/OLEHandler.cxx index f7cc322d808a..6cdde201e9f6 100644 --- a/writerfilter/source/dmapper/OLEHandler.cxx +++ b/writerfilter/source/dmapper/OLEHandler.cxx @@ -236,24 +236,24 @@ void OLEHandler::importStream(const uno::Reference<uno::XComponentContext>& xCom m_sProgId); } -OUString OLEHandler::getCLSID(const uno::Reference<uno::XComponentContext>& xComponentContext) const +OUString OLEHandler::getCLSID() const { OUString aRet; // See officecfg/registry/data/org/openoffice/Office/Embedding.xcu. if (m_sProgId == "Word.Document.12") { - if (officecfg::Office::Common::Filter::Microsoft::Import::WinWordToWriter::get(xComponentContext)) + if (officecfg::Office::Common::Filter::Microsoft::Import::WinWordToWriter::get()) aRet = "8BC6B165-B1B2-4EDD-aa47-dae2ee689dd6"; } else if (m_sProgId == "Excel.Sheet.12") { - if (officecfg::Office::Common::Filter::Microsoft::Import::ExcelToCalc::get(xComponentContext)) + if (officecfg::Office::Common::Filter::Microsoft::Import::ExcelToCalc::get()) aRet = "47BBB4CB-CE4C-4E80-A591-42D9AE74950F"; } else if (m_sProgId == "Equation.3") { - if (officecfg::Office::Common::Filter::Microsoft::Import::MathTypeToMath::get(xComponentContext)) + if (officecfg::Office::Common::Filter::Microsoft::Import::MathTypeToMath::get()) aRet = "078B7ABA-54FC-457F-8551-6147E776A997"; } else diff --git a/writerfilter/source/dmapper/OLEHandler.hxx b/writerfilter/source/dmapper/OLEHandler.hxx index f0279d1dc854..67fed0128186 100644 --- a/writerfilter/source/dmapper/OLEHandler.hxx +++ b/writerfilter/source/dmapper/OLEHandler.hxx @@ -77,7 +77,7 @@ public: const css::uno::Reference<css::text::XTextContent>& xOLE); /// Get the CLSID of the OLE object, in case we can find one based on m_sProgId. - OUString getCLSID(const css::uno::Reference<css::uno::XComponentContext>& xComponentContext) const; + OUString getCLSID() const; OUString const & GetDrawAspect() const; OUString const & GetVisAreaWidth() const; |