summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-01-22 13:39:21 +0000
committerMichael Meeks <michael.meeks@collabora.com>2015-01-22 15:10:53 +0000
commitc06f0d71e16ffe68836441d125a4c1eb50d5ccda (patch)
treeb3b85535a8d80594285f315cf754ff167f916aa3
parent4ec5623aab8955e514aa8ad0e82a6822f68cf83e (diff)
Resolves: fdo#88455 delete in empty data field crashes
Change-Id: I399bf576fe89283f839842959f06b8fe83f13b2b (cherry picked from commit 66df4d7d309ce237e4979d57b1069659ece1e3a5) Reviewed-on: https://gerrit.libreoffice.org/14108 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu> Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com>
-rw-r--r--sc/source/ui/dbgui/PivotLayoutTreeList.cxx15
1 files changed, 10 insertions, 5 deletions
diff --git a/sc/source/ui/dbgui/PivotLayoutTreeList.cxx b/sc/source/ui/dbgui/PivotLayoutTreeList.cxx
index 7f75da8968a5..dcfdae35b0be 100644
--- a/sc/source/ui/dbgui/PivotLayoutTreeList.cxx
+++ b/sc/source/ui/dbgui/PivotLayoutTreeList.cxx
@@ -38,7 +38,11 @@ void ScPivotLayoutTreeList::Setup(ScPivotLayoutDialog* pParent, SvPivotTreeListT
bool ScPivotLayoutTreeList::DoubleClickHdl()
{
- ScItemValue* pCurrentItemValue = (ScItemValue*) GetCurEntry()->GetUserData();
+ SvTreeListEntry* pEntry = GetCurEntry();
+ if (!pEntry)
+ return false;
+
+ ScItemValue* pCurrentItemValue = (ScItemValue*) pEntry->GetUserData();
ScPivotFuncData& rCurrentFunctionData = pCurrentItemValue->maFunctionData;
if (mpParent->IsDataElement(rCurrentFunctionData.mnCol))
@@ -105,11 +109,12 @@ void ScPivotLayoutTreeList::KeyInput(const KeyEvent& rKeyEvent)
vcl::KeyCode aCode = rKeyEvent.GetKeyCode();
sal_uInt16 nCode = aCode.GetCode();
- switch (nCode)
+ if (nCode == KEY_DELETE)
{
- case KEY_DELETE:
- GetModel()->Remove(GetCurEntry());
- return;
+ const SvTreeListEntry* pEntry = GetCurEntry();
+ if (pEntry)
+ GetModel()->Remove(pEntry);
+ return;
}
SvTreeListBox::KeyInput(rKeyEvent);
}