writerfilter/source/dmapper/DomainMapper_Impl.cxx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-)
New commits: commit 24d2e8ea7a17ded531d19cba3f1cb30b17833eea Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Tue Mar 21 19:18:14 2023 +0300 Commit: Mike Kaganski <mike.kagan...@collabora.com> CommitDate: Tue Mar 21 20:13:36 2023 +0000 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.kagan...@collabora.com> 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(