diff options
author | Caolán McNamara <caolanm@redhat.com> | 2018-08-01 09:04:58 +0100 |
---|---|---|
committer | Michael Stahl <Michael.Stahl@cib.de> | 2018-08-02 11:52:28 +0200 |
commit | 0845c1a74aef650b4aebaeea9587b3bfb5b38ffb (patch) | |
tree | 8dbe6b59e1073f93dc715262bd76df3c743d5a60 /writerfilter | |
parent | 2c1cf211e830399ef70e1df94976871afc7c6b3e (diff) |
forcepoint#56 null deref
Change-Id: Iaa9c4d6901a340145412fa46eaf5c292c3fb62e8
Reviewed-on: https://gerrit.libreoffice.org/58387
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index 321866daf85a..3d02e14b6bed 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -2896,15 +2896,17 @@ void DomainMapper_Impl::PushFieldContext() TagLogger::getInstance().element("pushFieldContext"); #endif - uno::Reference< text::XTextAppend > xTextAppend; + uno::Reference<text::XTextCursor> xCrsr; if (!m_aTextAppendStack.empty()) - xTextAppend = m_aTextAppendStack.top().xTextAppend; - uno::Reference< text::XTextRange > xStart; - if (xTextAppend.is()) { - uno::Reference< text::XTextCursor > xCrsr = xTextAppend->createTextCursorByRange( xTextAppend->getEnd() ); - xStart = xCrsr->getStart(); + uno::Reference<text::XTextAppend> xTextAppend = m_aTextAppendStack.top().xTextAppend; + if (xTextAppend.is()) + xCrsr = xTextAppend->createTextCursorByRange(xTextAppend->getEnd()); } + + uno::Reference< text::XTextRange > xStart; + if (xCrsr.is()) + xStart = xCrsr->getStart(); m_aFieldStack.push( std::make_shared<FieldContext>( xStart ) ); } /*------------------------------------------------------------------------- |