[Libreoffice-commits] core.git: Branch 'libreoffice-4-3' - oox/source sw/qa

Caolán McNamara caolanm at redhat.com
Wed Oct 1 01:03:01 PDT 2014


 oox/source/drawingml/diagram/diagramlayoutatoms.cxx |   10 +++++++++-
 sw/qa/core/data/ooxml/pass/fdo79129.docx            |binary
 2 files changed, 9 insertions(+), 1 deletion(-)

New commits:
commit 97291b92b70249c1bcdca33425585b201a1822db
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue Sep 30 10:43:37 2014 +0100

    Resolves: fdo#79129 Crash in oox::drawingml::LayoutNode::setupShape
    
    Change-Id: I0bafd2c43d29806eea0ff0cb165e67aece53488f
    Reviewed-on: https://gerrit.libreoffice.org/11726
    Reviewed-by: Miklos Vajna <vmiklos at collabora.co.uk>
    Tested-by: Miklos Vajna <vmiklos at collabora.co.uk>

diff --git a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
index ba1f857..fc07a90 100644
--- a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
+++ b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
@@ -400,7 +400,15 @@ bool LayoutNode::setupShape( const ShapePtr& rShape, const Diagram& rDgm, sal_uI
             const DiagramData::StringMap::value_type::second_type::const_iterator aVecEnd=aNodeName->second.end();
             while( aVecIter != aVecEnd )
             {
-                DiagramData::PointNameMap::const_iterator aDataNode2=rDgm.getData()->getPointNameMap().find(aVecIter->first);
+                DiagramData::PointNameMap& rMap = rDgm.getData()->getPointNameMap();
+                DiagramData::PointNameMap::const_iterator aDataNode2 = rMap.find(aVecIter->first);
+                if (aDataNode2 == rMap.end())
+                {
+                    //busted, skip it
+                    ++aVecIter;
+                    continue;
+                }
+
                 if( aVecIter->second == 0 )
                 {
                     // grab shape attr from topmost element(s)
diff --git a/sw/qa/core/data/ooxml/pass/fdo79129.docx b/sw/qa/core/data/ooxml/pass/fdo79129.docx
new file mode 100644
index 0000000..46ff0f5
Binary files /dev/null and b/sw/qa/core/data/ooxml/pass/fdo79129.docx differ


More information about the Libreoffice-commits mailing list