diff options
Diffstat (limited to 'sc/source/core/data/column3.cxx')
-rw-r--r-- | sc/source/core/data/column3.cxx | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx index f1a621a985b5..69213b7fedbc 100644 --- a/sc/source/core/data/column3.cxx +++ b/sc/source/core/data/column3.cxx @@ -979,7 +979,8 @@ void ScColumn::DeleteCells( aFunc.getSpans().getSpans(aSpans); // Delete the cells for real. - std::for_each(aSpans.begin(), aSpans.end(), EmptyCells(rBlockPos, *this)); + // tdf#139820: Deleting in reverse order is more efficient. + std::for_each(aSpans.rbegin(), aSpans.rend(), EmptyCells(rBlockPos, *this)); CellStorageModified(); aFunc.getSpans().swap(rDeleted); |