summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-09-30 10:43:37 +0100
committerAndras Timar <andras.timar@collabora.com>2014-09-30 20:24:11 +0000
commitf5c7ce25cec1a01a1f154c180d46fc97b32a2105 (patch)
tree7fca7c513cccf256aa603fbbacb0f81c26c46cd4 /oox
parent8cdb25a38530319e0b08d97d2706ff019797fe08 (diff)
Resolves: fdo#79129 Crash in oox::drawingml::LayoutNode::setupShape
Change-Id: I0bafd2c43d29806eea0ff0cb165e67aece53488f (cherry picked from commit c84ce79132c674b4c2d31da8997ed77671323dfe) Reviewed-on: https://gerrit.libreoffice.org/11727 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Andras Timar <andras.timar@collabora.com>
Diffstat (limited to 'oox')
-rw-r--r--oox/source/drawingml/diagram/diagramlayoutatoms.cxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
index 2953660ea442..2a196d533b27 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)