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

Julien Nabet serval2412 at yahoo.fr
Tue Feb 25 04:10:05 PST 2014


 writerfilter/source/rtftok/rtfsdrimport.cxx |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 154a3ef1f5938c78a7ef1201d9cbae0240eb1cb0
Author: Julien Nabet <serval2412 at yahoo.fr>
Date:   Sat Feb 22 15:53:13 2014 +0100

    Fix a crash from crashtest
    
    4  0x00002aaaaad1b3ab in rtl_uString_newFromSubString (ppThis=0x7ffffffeba48, pFrom=0x2aaaaad4236c <aImplEmpty_rtl_uString>, beginIndex=1, count=-2)
        at /home/julien/compile-libreoffice/libo/sal/rtl/strtmpl.cxx:1231
    5  0x00002aaaec13e2b1 in rtl::OUString::copy (this=0x7ffffffebed0, beginIndex=1, count=-2) at /home/julien/compile-libreoffice/libo/include/rtl/ustring.hxx:1483
    6  0x00002aaaec1717e3 in writerfilter::rtftok::RTFSdrImport::resolve (this=0x1aa4710, rShape=..., bClose=true)
        at /home/julien/compile-libreoffice/libo/writerfilter/source/rtftok/rtfsdrimport.cxx:356
    7  0x00002aaaec134dfb in writerfilter::rtftok::RTFDocumentImpl::popState (this=0x20508a0)
        at /home/julien/compile-libreoffice/libo/writerfilter/source/rtftok/rtfdocumentimpl.cxx:4100
    8  0x00002aaaec18327f in writerfilter::rtftok::RTFTokenizer::resolveParse (this=0x1aa46c0)
        at /home/julien/compile-libreoffice/libo/writerfilter/source/rtftok/rtftokenizer.cxx:106
    9  0x00002aaaec11b269 in writerfilter::rtftok::RTFDocumentImpl::resolve (this=0x20508a0, rMapper=...)
        at /home/julien/compile-libreoffice/libo/writerfilter/source/rtftok/rtfdocumentimpl.cxx:644
    10 0x00002aaaec297aa6 in RtfFilter::filter (this=0x1b658b0, aDescriptor=uno::Sequence of length 13 = {...})
        at /home/julien/compile-libreoffice/libo/writerfilter/source/filter/RtfFilter.cxx:122
    
    Here are some debug:
    8;5;(0,0);(0,13);(1694,13);(1694,0);(0,0);
    aToken (0,0)
    aToken (0,13)
    aToken (1694,13)
    aToken (1694,0)
    aToken (0,0)
    aToken
    
    So must test that aToken is not empty
    
    Change-Id: Ib5f0af3306a983c8531a5db732831d4d786ce9f5
    Reviewed-on: https://gerrit.libreoffice.org/8173
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
    Tested-by: Miklos Vajna <vmiklos at collabora.co.uk>

diff --git a/writerfilter/source/rtftok/rtfsdrimport.cxx b/writerfilter/source/rtftok/rtfsdrimport.cxx
index c13e104..8cbdc1b 100644
--- a/writerfilter/source/rtftok/rtfsdrimport.cxx
+++ b/writerfilter/source/rtftok/rtfsdrimport.cxx
@@ -350,7 +350,7 @@ void RTFSdrImport::resolve(RTFShape& rShape, bool bClose)
                     nCount = aToken.toInt32();
                     aCoordinates.realloc(nCount);
                 }
-                else
+                else if (aToken.getLength())
                 {
                     // The coordinates are in an (x,y) form.
                     aToken = aToken.copy(1, aToken.getLength() - 2);


More information about the Libreoffice-commits mailing list