[Libreoffice-commits] core.git: Branch 'libreoffice-4-2' - writerfilter/source

Caolán McNamara caolanm at redhat.com
Fri Apr 11 05:01:23 PDT 2014


 writerfilter/source/dmapper/DomainMapper_Impl.cxx |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit 35a6da942ec48fcbf60e06eae76952d0e56e59d0
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri Apr 11 11:10:14 2014 +0100

    check that stacks are not empty before top()
    
    Change-Id: Iad5b3381b8201c5ac32a5bdf99bd3d5872ea3afc
    (cherry picked from commit a1ea3838adee634ccf725bc5f2be7805c6294a16)
    Reviewed-on: https://gerrit.libreoffice.org/8932
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
    Tested-by: Miklos Vajna <vmiklos at collabora.co.uk>

diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
index fb688da..7fe53ae8 100644
--- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx
+++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx
@@ -1235,6 +1235,9 @@ void DomainMapper_Impl::appendTextContent(
     const uno::Sequence< beans::PropertyValue > xPropertyValues
     )
 {
+    SAL_WARN_IF(m_aTextAppendStack.empty(), "writerfilter.dmapper", "no text append stack");
+    if (m_aTextAppendStack.empty())
+        return;
     uno::Reference< text::XTextAppendAndConvert >  xTextAppendAndConvert( m_aTextAppendStack.top().xTextAppend, uno::UNO_QUERY );
     OSL_ENSURE( xTextAppendAndConvert.is(), "trying to append a text content without XTextAppendAndConvert" );
     if(xTextAppendAndConvert.is() && ! getTableManager( ).isIgnore())
@@ -1284,7 +1287,9 @@ void DomainMapper_Impl::appendOLE( const OUString& rStreamName, OLEHandlerPtr pO
         // gives a better ( visually ) result
         xOLEProperties->setPropertyValue(PropertyNameSupplier::GetPropertyNameSupplier().GetName( PROP_ANCHOR_TYPE ),  uno::makeAny( text::TextContentAnchorType_AS_CHARACTER ) );
         // remove ( if valid ) associated shape ( used for graphic replacement )
-        m_aAnchoredStack.top( ).bToRemove = true;
+        SAL_WARN_IF(m_aAnchoredStack.empty(), "writerfilter.dmapper", "no anchor stack");
+        if (!m_aAnchoredStack.empty())
+            m_aAnchoredStack.top( ).bToRemove = true;
         RemoveLastParagraph();
         m_aTextAppendStack.pop();
 


More information about the Libreoffice-commits mailing list