summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNoel Power <noel.power@suse.com>2012-12-13 16:52:50 +0000
committerPetr Mladek <pmladek@suse.cz>2012-12-14 15:05:24 +0100
commit7a5c52c1d13634e6a0eb1eac6ee8b78d50673b87 (patch)
tree7aaa48096b36fb2618a777478d0b13e205ff4fa3
parentfdo#58142: fix frame selection in SwPageFrm::GetCrsrOfst: (diff)
downloadcore-distro/suse/suse-3.6.3.tar.gz
core-distro/suse/suse-3.6.3.zip
fix sometimes data corruption with xlsx import ( with scenario sheets ) distro/suse/suse-3.6.3
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
-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. */