[Libreoffice-commits] core.git: Branch 'libreoffice-4-3-0' - sc/source

Eike Rathke erack at redhat.com
Tue Jul 15 02:51:14 PDT 2014


 sc/source/core/tool/token.cxx |   17 +++++++++++++++++
 1 file changed, 17 insertions(+)

New commits:
commit 37b97c83aa23d5a7c1687126d93cf1a69ce4a2d0
Author: Eike Rathke <erack at redhat.com>
Date:   Fri Jul 11 23:15:50 2014 +0200

    resolved fdo#77018 keep external references intact during sort
    
    Needs e463de2a56453a0d2cb0b5b58e96f7639f37cdd1 fix for fdo#79441 to
    work.
    
    Change-Id: Ide1cbeb4b25b17b5102977ccbdf8e6dbfcadfc60
    (cherry picked from commit db0a4c2575ffba1c170d74882b0f5a6229ec072f)
    Reviewed-on: https://gerrit.libreoffice.org/10244
    Reviewed-by: Muthu Subramanian K <muthusuba at gmail.com>
    Reviewed-by: Kohei Yoshida <libreoffice at kohei.us>
    Reviewed-by: David Tardon <dtardon at redhat.com>
    Tested-by: David Tardon <dtardon at redhat.com>

diff --git a/sc/source/core/tool/token.cxx b/sc/source/core/tool/token.cxx
index 4ac537f..8738877 100644
--- a/sc/source/core/tool/token.cxx
+++ b/sc/source/core/tool/token.cxx
@@ -529,6 +529,9 @@ bool ScToken::Is3DRef() const
             if ( GetSingleRef().IsFlag3D() )
                 return true;
             break;
+        case svExternalSingleRef:
+        case svExternalDoubleRef:
+            return true;
         default:
         {
             // added to avoid warnings
@@ -2261,6 +2264,20 @@ void ScTokenArray::ReadjustRelative3DReferences( const ScAddress& rOldPos,
                 }
             }
             break;
+            case svExternalDoubleRef :
+            {
+                ScSingleRefData& rRef2 = static_cast<ScToken*>(pCode[j])->GetSingleRef2();
+                ScAddress aAbs = rRef2.toAbs(rOldPos);
+                rRef2.SetAddress(aAbs, rNewPos);
+            }
+            //! fallthru
+            case svExternalSingleRef :
+            {
+                ScSingleRefData& rRef1 = static_cast<ScToken*>(pCode[j])->GetSingleRef();
+                ScAddress aAbs = rRef1.toAbs(rOldPos);
+                rRef1.SetAddress(aAbs, rNewPos);
+            }
+            break;
             default:
             {
                 // added to avoid warnings


More information about the Libreoffice-commits mailing list