summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorNoel Power <noel.power@suse.com>2012-12-13 16:52:50 +0000
committerKohei Yoshida <kohei.yoshida@gmail.com>2012-12-18 05:15:45 +0000
commitf81cae7a1e9d85ad3e17ced53bac40bfd1690a16 (patch)
treec213bdb6bfb00ca1851b2fb5deb0a2952cc8e821 /sc
parent9f576bac2267bb143058a343255ab2ad47869847 (diff)
fix sometimes data corruption with xlsx import ( with scenario sheets )
formula import is buffered 'till the end of import. The processing of the formula data need to happen before the scenario import happens. This is necessary because sheet numbers stored in the formula addresses can become invalid as scenario import insertes new hidden sheets upsetting the previous table order Change-Id: I9357f028f31bec1b1504ca991f5534f80d79c9bc Reviewed-on: https://gerrit.libreoffice.org/1338 Reviewed-by: Kohei Yoshida <kohei.yoshida@gmail.com> Tested-by: Kohei Yoshida <kohei.yoshida@gmail.com>
Diffstat (limited to 'sc')
-rw-r--r--sc/source/filter/oox/workbookhelper.cxx7
1 files changed, 2 insertions, 5 deletions
diff --git a/sc/source/filter/oox/workbookhelper.cxx b/sc/source/filter/oox/workbookhelper.cxx
index 071b9a66d736..dce942c04dae 100644
--- a/sc/source/filter/oox/workbookhelper.cxx
+++ b/sc/source/filter/oox/workbookhelper.cxx
@@ -591,11 +591,6 @@ void WorkbookGlobals::finalize()
// #i79826# enable updating automatic row height after loading the document
aPropSet.setProperty( PROP_IsAdjustHeightEnabled, true );
- getFormulaBuffer().finalizeImport();
-
- // hack, setting it true the second time will delete the cache
- aPropSet.setProperty( PROP_IsAdjustHeightEnabled, true );
-
// Insert all pivot tables. Must be done after loading all sheets and
// formulas, because data pilots expect existing source data on
// creation.
@@ -667,6 +662,8 @@ void WorkbookHelper::finalizeWorkbookImport()
mrBookGlob.getWorkbookSettings().finalizeImport();
mrBookGlob.getViewSettings().finalizeImport();
+ // need to import formulas before scenarios
+ mrBookGlob.getFormulaBuffer().finalizeImport();
/* Insert scenarios after all sheet processing is done, because new hidden
sheets are created for scenarios which would confuse code that relies
on certain sheet indexes. Must be done after pivot tables too. */