diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2023-03-21 19:18:14 +0300 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2023-03-21 20:13:36 +0000 |
commit | 24d2e8ea7a17ded531d19cba3f1cb30b17833eea (patch) | |
tree | 59611dc549febcd3eb33f0ac258cf540e7fd1142 /writerfilter/source/dmapper/DomainMapper_Impl.cxx | |
parent | 0f691fe670526c1c0ba5c9bab8dfe8209bfe698e (diff) |
Simplify a bit
Also takes care of one place where dereferencing wasn't safe
Change-Id: I4ed67ad709610bea9cbed8184710f53d18d76d11
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149225
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'writerfilter/source/dmapper/DomainMapper_Impl.cxx')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index ffcd883289bd..37f7059118c8 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -6218,7 +6218,6 @@ void DomainMapper_Impl::handleToc OUString sTemplate; OUString sChapterNoSeparator; OUString sFigureSequence; - uno::Reference< beans::XPropertySet > xTOC; OUString aBookmarkName; // \a Builds a table of figures but does not include the captions's label and number @@ -6317,6 +6316,8 @@ void DomainMapper_Impl::handleToc const OUString aTocTitle = extractTocTitle(); + uno::Reference<beans::XPropertySet> xTOC; + if (m_xTextFactory.is() && ! m_aTextAppendStack.empty()) { const auto& xTextAppend = GetTopTextAppend(); @@ -6352,13 +6353,17 @@ void DomainMapper_Impl::handleToc } m_bStartTOC = true; + pContext->SetTOC(xTOC); + m_bParaHadField = false; - if (xTOC.is()) - xTOC->setPropertyValue(getPropertyName( PROP_TITLE ), uno::Any(aTocTitle)); + if (!xTOC) + return; + + xTOC->setPropertyValue(getPropertyName( PROP_TITLE ), uno::Any(aTocTitle)); if (!aBookmarkName.isEmpty()) xTOC->setPropertyValue(getPropertyName(PROP_TOC_BOOKMARK), uno::Any(aBookmarkName)); - if( !bTableOfFigures && xTOC.is() ) + if (!bTableOfFigures) { xTOC->setPropertyValue( getPropertyName( PROP_LEVEL ), uno::Any( nMaxLevel ) ); xTOC->setPropertyValue( getPropertyName( PROP_CREATE_FROM_OUTLINE ), uno::Any( bFromOutline )); @@ -6427,7 +6432,7 @@ void DomainMapper_Impl::handleToc } } } - else if (bTableOfFigures && xTOC.is()) + else // if (bTableOfFigures) { if (!sFigureSequence.isEmpty()) xTOC->setPropertyValue(getPropertyName(PROP_LABEL_CATEGORY), @@ -6452,8 +6457,6 @@ void DomainMapper_Impl::handleToc xLevelFormats->replaceByIndex( 1, uno::Any( aNewLevel ) ); } } - pContext->SetTOC( xTOC ); - m_bParaHadField = false; } uno::Reference<beans::XPropertySet> DomainMapper_Impl::createSectionForRange( |