sw/source/filter/ww8/writerhelper.hxx | 2 + sw/source/filter/ww8/ww8atr.cxx | 39 ++++++++++++++++------------------ 2 files changed, 21 insertions(+), 20 deletions(-)
New commits: commit 9f81fc25e528406f12cbfa6d56a27b69f9957edd Author: Caolán McNamara <caol...@redhat.com> AuthorDate: Sun Oct 4 14:16:53 2020 +0100 Commit: Caolán McNamara <caol...@redhat.com> CommitDate: Sun Oct 4 18:01:53 2020 +0200 combine these identical blocks together into a function Change-Id: I783c7f649d0624de9fb46c2b8379fc47ec311f63 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103917 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> diff --git a/sw/source/filter/ww8/writerhelper.hxx b/sw/source/filter/ww8/writerhelper.hxx index f9d186ec58df..9ad16d0c2f14 100644 --- a/sw/source/filter/ww8/writerhelper.hxx +++ b/sw/source/filter/ww8/writerhelper.hxx @@ -650,6 +650,8 @@ namespace sw */ explicit SetLayer(const SwDoc &rDoc); }; + + const SwCharFormat* GetSwCharFormat(const SwFormatINetFormat& rINet, SwDoc& rDoc); } namespace hack diff --git a/sw/source/filter/ww8/ww8atr.cxx b/sw/source/filter/ww8/ww8atr.cxx index 7d2a1c0432d3..d6b0fabe8701 100644 --- a/sw/source/filter/ww8/ww8atr.cxx +++ b/sw/source/filter/ww8/ww8atr.cxx @@ -226,22 +226,10 @@ void MSWordExportBase::ExportPoolItemsToCHP( ww8::PoolItems &rItems, sal_uInt16 if (pINetItem) { const SwFormatINetFormat& rINet = static_cast<const SwFormatINetFormat&>(*pINetItem); - - if ( rINet.GetValue().isEmpty() ) + const SwCharFormat* pINetFormat = GetSwCharFormat(rINet, m_rDoc); + if (!pINetFormat) continue; - const sal_uInt16 nId = rINet.GetINetFormatId(); - const OUString& rStr = rINet.GetINetFormat(); - - if (rStr.isEmpty()) - { - OSL_ENSURE( false, "MSWordExportBase::ExportPoolItemsToCHP(..) - missing unvisited character format at hyperlink attribute" ); - } - - const SwCharFormat* pINetFormat = IsPoolUserFormat( nId ) - ? m_rDoc.FindCharFormatByName( rStr ) - : m_rDoc.getIDocumentStylePoolAccess().GetCharFormatFromPool( nId ); - const SwCharFormat* pFormat = static_cast<const SwFormatCharFormat&>(*pItem).GetCharFormat(); ww8::PoolItems aCharItems, aINetItems; GetPoolItems(pFormat->GetAttrSet(), aCharItems, false); @@ -1604,10 +1592,12 @@ void WW8AttributeOutput::CharBackground( const SvxBrushItem& rBrush ) m_rWW8Export.InsUInt16( 0x0000); } -void WW8AttributeOutput::TextINetFormat( const SwFormatINetFormat& rINet ) +namespace sw { namespace util { + +const SwCharFormat* GetSwCharFormat(const SwFormatINetFormat& rINet, SwDoc& rDoc) { - if ( rINet.GetValue().isEmpty() ) - return; + if (rINet.GetValue().isEmpty()) + return nullptr; const sal_uInt16 nId = rINet.GetINetFormatId(); const OUString& rStr = rINet.GetINetFormat(); @@ -1616,9 +1606,18 @@ void WW8AttributeOutput::TextINetFormat( const SwFormatINetFormat& rINet ) OSL_ENSURE( false, "WW8AttributeOutput::TextINetFormat(..) - missing unvisited character format at hyperlink attribute" ); } - const SwCharFormat* pFormat = IsPoolUserFormat( nId ) - ? m_rWW8Export.m_rDoc.FindCharFormatByName( rStr ) - : m_rWW8Export.m_rDoc.getIDocumentStylePoolAccess().GetCharFormatFromPool( nId ); + return IsPoolUserFormat( nId ) + ? rDoc.FindCharFormatByName( rStr ) + : rDoc.getIDocumentStylePoolAccess().GetCharFormatFromPool( nId ); +} + +} } + +void WW8AttributeOutput::TextINetFormat( const SwFormatINetFormat& rINet ) +{ + const SwCharFormat* pFormat = GetSwCharFormat(rINet, m_rWW8Export.m_rDoc); + if (!pFormat) + return; m_rWW8Export.InsUInt16( NS_sprm::CIstd::val ); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits