summaryrefslogtreecommitdiff
path: root/sc/source/core/data
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2015-01-16 22:40:36 +0100
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2015-01-22 01:27:12 +0000
commitccf4109986a200eabc3343e8da22fbe7a3e4c43b (patch)
tree842eca98ba8f901726063e4ae7b47ff8917d9231 /sc/source/core/data
parentd98719b9f8e00996bc7bd8e3abeb6d4dd63d9a3e (diff)
don't access empty range list, could be rhbz#1180312
ScRangeList::DeleteArea() may remove an entire range, if it was the last range a subsequent call to ScConditionalFormat::DeleteArea() would attempt to access an invalid first element. Change-Id: I8d68c27963dc8561d61a94980093c271bd3aaffb (cherry picked from commit 9af8e14e67d354bb7736271a76a3dd8b6da78fd9) Reviewed-on: https://gerrit.libreoffice.org/13963 Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Diffstat (limited to 'sc/source/core/data')
-rw-r--r--sc/source/core/data/conditio.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/sc/source/core/data/conditio.cxx b/sc/source/core/data/conditio.cxx
index 794fb5695add..35a827fb5134 100644
--- a/sc/source/core/data/conditio.cxx
+++ b/sc/source/core/data/conditio.cxx
@@ -2064,6 +2064,9 @@ void ScConditionalFormat::UpdateMoveTab( sc::RefUpdateMoveTabContext& rCxt )
void ScConditionalFormat::DeleteArea( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2 )
{
+ if (maRanges.empty())
+ return;
+
SCTAB nTab = maRanges[0]->aStart.Tab();
maRanges.DeleteArea( nCol1, nRow1, nTab, nCol2, nRow2, nTab );
}