[Libreoffice-commits] .: sc/source

Kohei Yoshida kohei at kemper.freedesktop.org
Thu Mar 3 14:37:50 PST 2011


 sc/source/core/tool/interpr1.cxx |   15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

New commits:
commit a8a27b0d95fbb279399c4c36e0ec5294aaa96de9
Author: Kohei Yoshida <kyoshida at novell.com>
Date:   Thu Mar 3 17:32:46 2011 -0500

    Handle external references in LOOKUP, HLOOKUP and VLOOKUP. (fdo#33426)

diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 9a64b2d..0803270 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -5217,8 +5217,10 @@ void ScInterpreter::ScLookup()
             }
             break;
             case svMatrix:
+            case svExternalSingleRef:
+            case svExternalDoubleRef:
             {
-                pResMat = PopMatrix();
+                pResMat = GetMatrix();
                 if (!pResMat)
                 {
                     PushIllegalParameter();
@@ -5275,8 +5277,10 @@ void ScInterpreter::ScLookup()
         }
         break;
         case svMatrix:
+        case svExternalSingleRef:
+        case svExternalDoubleRef:
         {
-            pDataMat = PopMatrix();
+            pDataMat = GetMatrix();
             if (!pDataMat)
             {
                 PushIllegalParameter();
@@ -5763,12 +5767,9 @@ void ScInterpreter::CalculateLookup(BOOL HLookup)
                 return;
             }
         }
-        else if (eType == svMatrix || eType == svExternalDoubleRef)
+        else if (eType == svMatrix || eType == svExternalDoubleRef || eType == svExternalSingleRef)
         {
-            if (eType == svMatrix)
-                pMat = PopMatrix();
-            else
-                PopExternalDoubleRef(pMat);
+            pMat = GetMatrix();
 
             if (pMat)
                 pMat->GetDimensions(nC, nR);


More information about the Libreoffice-commits mailing list