Resolves: fdo#86662 don't crash on docx load
ok in master, so just don't crash in 4-3 series
Change-Id: I2dcb7b0434341ff8058bdbdfc065ad08bd0600bc
Reviewed-on: https://gerrit.libreoffice.org/13374
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index 1654744..bc4ff52 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -3952,10 +3952,13 @@ void DomainMapper_Impl::CloseFieldCommand()
OUString aCode( pContext->GetCommand().trim() );
xFieldInterface = m_xTextFactory->createInstance("com.sun.star.text.Fieldmark");
const uno::Reference<text::XTextContent> xTextContent(xFieldInterface, uno::UNO_QUERY_THROW);
uno::Reference< text::XTextAppend > xTextAppend;
xTextAppend = m_aTextAppendStack.top().xTextAppend;
uno::Reference< text::XTextCursor > xCrsr = xTextAppend->createTextCursorByRange(pContext->GetStartRange());
if (xTextContent.is())
uno::Reference< text::XTextAppend > xTextAppend;
if (!m_aTextAppendStack.empty())
xTextAppend = m_aTextAppendStack.top().xTextAppend;
uno::Reference< text::XTextCursor > xCrsr;
if (xTextAppend.is())
xCrsr = xTextAppend->createTextCursorByRange(pContext->GetStartRange());
if (xTextAppend.is() && xTextContent.is())
{
xTextAppend->insertTextContent(xCrsr,xTextContent, sal_True);
}