summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-09-30 10:43:37 +0100
committerCaolán McNamara <caolanm@redhat.com>2014-09-30 20:42:42 +0100
commitc84ce79132c674b4c2d31da8997ed77671323dfe (patch)
treef8425f1e786edf66deb34d75220728b92b47c583 /oox
parentd59e33500a250824e713afacef2ea295576caba6 (diff)
Resolves: fdo#79129 Crash in oox::drawingml::LayoutNode::setupShape
Change-Id: I0bafd2c43d29806eea0ff0cb165e67aece53488f
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 049f409d4120..dc5f2db4755e 100644
--- a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
+++ b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
@@ -394,7 +394,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)