diff options
author | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2012-09-28 01:21:41 +0200 |
---|---|---|
committer | Michael Meeks <michael.meeks@suse.com> | 2012-10-01 10:15:35 +0100 |
commit | 6232eeaa90643f2e067145296f8e97fb16f7ecf5 (patch) | |
tree | 066f1dea3c21328575b244c706ee1f63aa798d80 /sc/source/filter | |
parent | 115add85ea9e16623a3580e3343499d0ff444a45 (diff) |
ooxml spec allow ext ref to non existent entry, fdo#54558
Change-Id: I717917d04a93975472d60248eb61066cd04d1bbe
Signed-off-by: Michael Meeks <michael.meeks@suse.com>
Diffstat (limited to 'sc/source/filter')
-rw-r--r-- | sc/source/filter/oox/extlstcontext.cxx | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sc/source/filter/oox/extlstcontext.cxx b/sc/source/filter/oox/extlstcontext.cxx index 740a841d3b33..d5cc534079ac 100644 --- a/sc/source/filter/oox/extlstcontext.cxx +++ b/sc/source/filter/oox/extlstcontext.cxx @@ -170,7 +170,13 @@ ContextHandlerRef ExtGlobalContext::onCreateContext( sal_Int32 nElement, const A if(nElement == XLS_EXT_TOKEN( cfRule )) { rtl::OUString aId = rAttribs.getString( XML_id, rtl::OUString() ); - void* pInfo = getExtLst().find( aId )->second; + + // an ext entrie does not need to have an existing corresponding entry + ExtLst::const_iterator aExt = getExtLst().find( aId ); + if(aExt == getExtLst().end()) + return NULL; + + void* pInfo = aExt->second; if (!pInfo) { return NULL; |