[Libreoffice-commits] core.git: Branch 'libreoffice-5-1' - sc/source

Eike Rathke erack at redhat.com
Tue Apr 12 14:05:53 UTC 2016


 sc/source/core/tool/compiler.cxx |   14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

New commits:
commit a4c6fc2c2641d2020cce626877749a22ca10be4b
Author: Eike Rathke <erack at redhat.com>
Date:   Tue Apr 5 18:03:00 2016 +0100

    Resolves: tdf#98990 accept R1C1 notation entire column/row references
    
    ... which consist of only C4 or C[3] without a range operator.
    
    Change-Id: I1865f0ec4c4fec1101b93b6b40d6f26871a65f07
    (cherry picked from commit 3c36ba50f65d663f35264f2a11c99c0ff98674a2)
    Reviewed-on: https://gerrit.libreoffice.org/23842
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Markus Mohrhard <markus.mohrhard at googlemail.com>

diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx
index aa9e1b9..5f258df 100644
--- a/sc/source/core/tool/compiler.cxx
+++ b/sc/source/core/tool/compiler.cxx
@@ -3008,15 +3008,19 @@ bool ScCompiler::IsReference( const OUString& rName )
     }
     else
     {
-        // Special treatment for the 'E:\[doc]Sheet1:Sheet3'!D5 Excel sickness,
-        // mnRangeOpPosInSymbol did not catch the range operator as it is
-        // within a quoted name.
         switch (pConv->meConv)
         {
             case FormulaGrammar::CONV_XL_A1:
-            case FormulaGrammar::CONV_XL_R1C1:
             case FormulaGrammar::CONV_XL_OOX:
-                if (rName[0] == '\'' && IsDoubleReference( rName))
+                // Special treatment for the 'E:\[doc]Sheet1:Sheet3'!D5 Excel
+                // sickness, mnRangeOpPosInSymbol did not catch the range
+                // operator as it is within a quoted name.
+                if (rName[0] != '\'')
+                    return false;   // Document name has to be single quoted.
+                // fallthru
+            case FormulaGrammar::CONV_XL_R1C1:
+                // C2 or C[1] are valid entire column references.
+                if (IsDoubleReference( rName))
                     return true;
                 break;
             default:


More information about the Libreoffice-commits mailing list