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

Bartosz Kosiorek gang65 at poczta.onet.pl
Tue Feb 6 13:46:44 UTC 2018


 sc/source/core/tool/interpr1.cxx |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit d4a41817aa86fffaa3a27265966bc8265d34dd0a
Author: Bartosz Kosiorek <gang65 at poczta.onet.pl>
Date:   Tue Feb 6 02:10:14 2018 +0100

    tdf#115162 Fix support for external reference for IFS functions
    
    Functions SUMIFS, AVERAGEIFS, COUNTIFS, MINIFS, MAXIFS were not
    supported External references.
    
    The root cause issue, was using PopMatrix() method for:
    svExternalSingleRef and svExternalDoubleRef.
    
    PopMatrix() method only supports svMatrix, and in other
    cases returns FormulaError::IllegalParameter error.
    
    To resolve that issue, the method GetMatrix() was used.
    It is properly support svMatrix, svExternalSingleRef and svExternalDoubleRef.
    
    Change-Id: I3e30ca50069264a6d990b16ec668e6d0df51c6e6
    Reviewed-on: https://gerrit.libreoffice.org/49264
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Eike Rathke <erack at redhat.com>
    (cherry picked from commit b6db65752c60de7268e4f65d7fc5ac110adb2fb0)
    Reviewed-on: https://gerrit.libreoffice.org/49284

diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 42db756a2e01..53122e82cb40 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -5431,7 +5431,7 @@ void ScInterpreter::IterateParametersIfs( sc::ParamIfsResult& rRes )
                 case svExternalSingleRef:
                 case svExternalDoubleRef:
                     {
-                        pQueryMatrix = PopMatrix();
+                        pQueryMatrix = GetMatrix();
                         if (!pQueryMatrix)
                         {
                             SetError( FormulaError::IllegalParameter);
@@ -5590,7 +5590,7 @@ void ScInterpreter::IterateParametersIfs( sc::ParamIfsResult& rRes )
                 case svExternalSingleRef:
                 case svExternalDoubleRef:
                     {
-                        pMainMatrix = PopMatrix();
+                        pMainMatrix = GetMatrix();
                         if (!pMainMatrix)
                         {
                             SetError( FormulaError::IllegalParameter);


More information about the Libreoffice-commits mailing list