[Libreoffice-commits] .: Branch 'libreoffice-3-5' - sc/source

Kohei Yoshida kohei at kemper.freedesktop.org
Fri Mar 16 12:58:39 PDT 2012


 sc/source/core/data/cell.cxx |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 14ed2c61066b38d812bb68c4c1f02f8cb7c97f4d
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Thu Mar 15 22:22:10 2012 +0100

    update the relatice refs after the absolute refs, fdo#47285
    
    The algoithm for updating absolute refs needs to calculate the old
    position based on the information before any updates to the RefData
    
    Signed-off-by: Kohei Yoshida <kohei.yoshida at gmail.com>

diff --git a/sc/source/core/data/cell.cxx b/sc/source/core/data/cell.cxx
index 9b431fa..4ed94b9 100644
--- a/sc/source/core/data/cell.cxx
+++ b/sc/source/core/data/cell.cxx
@@ -861,9 +861,6 @@ ScFormulaCell::ScFormulaCell( const ScFormulaCell& rCell, ScDocument& rDoc, cons
 {
     pCode = rCell.pCode->Clone();
 
-    if ( nCloneFlags & SC_CLONECELL_ADJUST3DREL )
-        pCode->ReadjustRelative3DReferences( rCell.aPos, aPos );
-
     // evtl. Fehler zuruecksetzen und neu kompilieren
     //  nicht im Clipboard - da muss das Fehlerflag erhalten bleiben
     //  Spezialfall Laenge=0: als Fehlerzelle erzeugt, dann auch Fehler behalten
@@ -900,6 +897,9 @@ ScFormulaCell::ScFormulaCell( const ScFormulaCell& rCell, ScDocument& rDoc, cons
         pCode->AdjustAbsoluteRefs( rCell.pDocument, rCell.aPos, aPos );
     }
 
+    if ( nCloneFlags & SC_CLONECELL_ADJUST3DREL )
+        pCode->ReadjustRelative3DReferences( rCell.aPos, aPos );
+
     if( !bCompile )
     {   // Name references with references and ColRowNames
         pCode->Reset();


More information about the Libreoffice-commits mailing list