summaryrefslogtreecommitdiff
path: root/sc/source
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2022-06-14 12:56:41 +0100
committerAndras Timar <andras.timar@collabora.com>2022-06-24 13:42:26 +0200
commitc4a191d21d59aaacc9304f3760bb69b4108675f9 (patch)
tree693145e7286915286ddf20e36842694e78ee3956 /sc/source
parentaa28ee06b86e35b95cb6f57bc1aa2a3060ab9275 (diff)
crashtesting: assert seen on loading forum-en-38962.ods
mismatched Push/Pop, catch offending exception Change-Id: Ib2297a8ab04a2f2491e4c922d9e4db82a66ea911 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135841 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Diffstat (limited to 'sc/source')
-rw-r--r--sc/source/core/data/dpobject.cxx11
1 files changed, 10 insertions, 1 deletions
diff --git a/sc/source/core/data/dpobject.cxx b/sc/source/core/data/dpobject.cxx
index a5ff421649fd..04cd7099dcca 100644
--- a/sc/source/core/data/dpobject.cxx
+++ b/sc/source/core/data/dpobject.cxx
@@ -1022,7 +1022,16 @@ bool ScDPObject::GetMembers( sal_Int32 nDim, sal_Int32 nHier, vector<ScDPLabelDa
for (sal_Int32 i = 0; i < nCount; ++i)
{
- Reference<container::XNamed> xMember(xMembersIA->getByIndex(i), UNO_QUERY);
+ Reference<container::XNamed> xMember;
+ try
+ {
+ xMember = Reference<container::XNamed>(xMembersIA->getByIndex(i), UNO_QUERY);
+ }
+ catch (const container::NoSuchElementException&)
+ {
+ TOOLS_WARN_EXCEPTION("sc", "ScNameToIndexAccess getByIndex failed");
+ }
+
ScDPLabelData::Member aMem;
if (xMember.is())