[Libreoffice-commits] core.git: 2 commits - sc/source
Eike Rathke
erack at redhat.com
Fri May 20 22:21:51 UTC 2016
sc/source/core/tool/interpr1.cxx | 8 ++++++++
1 file changed, 8 insertions(+)
New commits:
commit ccf99226447e82b8b6ebb6167c5607d19913b091
Author: Eike Rathke <erack at redhat.com>
Date: Sat May 21 00:20:03 2016 +0200
document findings on external range reference handling
Change-Id: Ib9f3bdb41d8fc8b3c370508675b39a331f5ba0a1
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index b2b19f1..1a24e78 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -878,6 +878,12 @@ double ScInterpreter::Compare( ScQueryOp eOp )
break;
case svExternalDoubleRef:
// TODO: Find out how to handle this...
+ // Xcl generates a position dependent intersection using
+ // col/row, as it seems to do for all range references, not
+ // only in compare context. We'd need a general implementation
+ // for that behavior similar to svDoubleRef in scalar and array
+ // mode. Which also means we'd have to change all places where
+ // it currently is handled along with svMatrix.
default:
SetError( errIllegalParameter);
break;
commit 01e76ceb2e22ccf9a61789aef1fe982332b777bb
Author: Eike Rathke <erack at redhat.com>
Date: Sat May 21 00:11:32 2016 +0200
handle external references in CompareMat() as matrix
Change-Id: I1ab606bd1df0cea8ebbc14f70702423506bb8c70
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 0c8006f..b2b19f1 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -935,6 +935,8 @@ sc::RangeMatrix ScInterpreter::CompareMat( ScQueryOp eOp, sc::CompareOptions* pO
}
}
break;
+ case svExternalSingleRef:
+ case svExternalDoubleRef:
case svDoubleRef:
case svMatrix:
aMat[i] = GetRangeMatrix();
More information about the Libreoffice-commits
mailing list