summaryrefslogtreecommitdiff
path: root/sc/source/ui
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2011-11-28 03:37:41 +0100
committerEike Rathke <erack@redhat.com>2011-11-28 15:25:34 +0100
commit62e8e2a31a9344ee40a5ebde6fe7559290efb300 (patch)
treed658106ae7e91172316700104131c5af14e7504e /sc/source/ui
parent0afc3190deb3cc77eb2149104925a5daadf6ded1 (diff)
dr80: #i164410# optimized cell allocation in XCellRangeData::setDataArray() to improve performance of import filters
# HG changeset patch # User Daniel Rentz [dr] <daniel.rentz@oracle.com> # Date 1300094581 -3600 # Node ID 05c6b55810889860d2002614b870484de6581ccb # Parent 564e24baaaae5e18c8bfa76811993fbefa571b5c
Diffstat (limited to 'sc/source/ui')
-rw-r--r--sc/source/ui/unoobj/cellsuno.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/sc/source/ui/unoobj/cellsuno.cxx b/sc/source/ui/unoobj/cellsuno.cxx
index fc90a3aca28e..e26ae906c0c1 100644
--- a/sc/source/ui/unoobj/cellsuno.cxx
+++ b/sc/source/ui/unoobj/cellsuno.cxx
@@ -1109,6 +1109,11 @@ sal_Bool lcl_PutDataArray( ScDocShell& rDocShell, const ScRange& rRange,
pDoc->DeleteAreaTab( nStartCol, nStartRow, nEndCol, nEndRow, nTab, IDF_CONTENTS );
+ /* #164410# Use double allocation, which will speed up import filters
+ using XCellRangeData::setDataArray() significantly. */
+ bool bDoubleAlloc = ScColumn::bDoubleAlloc;
+ ScColumn::bDoubleAlloc = true;
+
sal_Bool bError = false;
SCROW nDocRow = nStartRow;
for (long nRow=0; nRow<nRows; nRow++)
@@ -1159,6 +1164,7 @@ sal_Bool lcl_PutDataArray( ScDocShell& rDocShell, const ScRange& rRange,
++nDocRow;
}
+ ScColumn::bDoubleAlloc = bDoubleAlloc;
sal_Bool bHeight = rDocShell.AdjustRowHeight( nStartRow, nEndRow, nTab );