diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-10-05 09:03:16 +0100 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2015-10-05 08:57:57 +0000 |
commit | ddd5614f8c4b95c2b2e902b028060425b1bbc7dc (patch) | |
tree | 3e80aaf2b2ef7e3175bea6dd996bf918836f4014 | |
parent | 935c1294c21db82a6b96836057cd3a2e66351e89 (diff) |
fix crash in XclImpSupbook::GetExternName
Change-Id: I1b6f8d5190fae16bdeb1def7887d3121dad6bc16
(cherry picked from commit 75304346823ed4d5b6c7415b2f78e4022fdd8e72)
Reviewed-on: https://gerrit.libreoffice.org/19147
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
-rw-r--r-- | sc/qa/unit/data/xls/pass/crash-7.xls | bin | 0 -> 4109 bytes | |||
-rw-r--r-- | sc/source/filter/excel/xilink.cxx | 6 |
2 files changed, 5 insertions, 1 deletions
diff --git a/sc/qa/unit/data/xls/pass/crash-7.xls b/sc/qa/unit/data/xls/pass/crash-7.xls Binary files differnew file mode 100644 index 000000000000..3dd200a41cdd --- /dev/null +++ b/sc/qa/unit/data/xls/pass/crash-7.xls diff --git a/sc/source/filter/excel/xilink.cxx b/sc/source/filter/excel/xilink.cxx index 1232b97de518..fce7ba4edc5c 100644 --- a/sc/source/filter/excel/xilink.cxx +++ b/sc/source/filter/excel/xilink.cxx @@ -703,7 +703,11 @@ void XclImpSupbook::ReadExternname( XclImpStream& rStrm, ExcelToSc* pFormulaConv const XclImpExtName* XclImpSupbook::GetExternName( sal_uInt16 nXclIndex ) const { - OSL_ENSURE( nXclIndex > 0, "XclImpSupbook::GetExternName - index must be >0" ); + if (nXclIndex == 0) + { + SAL_WARN("sc", "XclImpSupbook::GetExternName - index must be >0"); + return NULL; + } if (meType == EXC_SBTYPE_SELF || nXclIndex > maExtNameList.size()) return NULL; return &maExtNameList[nXclIndex-1]; |