diff options
author | Tor Lillqvist <tml@collabora.com> | 2015-10-18 22:57:47 +0300 |
---|---|---|
committer | Markus Mohrhard <markus.mohrhard@googlemail.com> | 2016-02-02 17:10:23 +0000 |
commit | 6f50edb1aabaf9de37782e63abd109e2276bd0c4 (patch) | |
tree | 1a9ca4cb589ba52752c3128d5a40262329270263 | |
parent | 406fdc37081a2bdbb4f15f80605f881105c15da0 (diff) |
Fixes the VLOOKUP problem reported in tdf#94540 by falling back to
non-OpenCL for such a case, where one of the columns passed to the
VLOOKUP contained strings. And since a while, we don't claim to handle
strings in VLOOKUP. Which is true.
(cherry picked from commit 476bef70f1d9fd58b29a1f6fb95e54567b031acf)
Change-Id: I4140c86bf8166beb8201aa90c075d9f4432d9173
Reviewed-on: https://gerrit.libreoffice.org/21874
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
-rw-r--r-- | sc/source/core/opencl/formulagroupcl.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sc/source/core/opencl/formulagroupcl.cxx b/sc/source/core/opencl/formulagroupcl.cxx index 2667f5d67e96..4b8b50e98e69 100644 --- a/sc/source/core/opencl/formulagroupcl.cxx +++ b/sc/source/core/opencl/formulagroupcl.cxx @@ -2659,6 +2659,13 @@ DynamicKernelSoPArguments::DynamicKernelSoPArguments(const ScCalcConfig& config, new DynamicKernelMixedSlidingArgument(mCalcConfig, ts, ft->Children[i], mpCodeGen, j))); } + else if (!AllStringsAreNull(pDVR->GetArrays()[j].mpStringArray, pDVR->GetArrayLength()) && + !pCodeGen->takeString()) + { + // Can't handle + SAL_INFO("sc.opencl", "Strings but can't do that."); + throw UnhandledToken(pChild, ("unhandled operand " + StackVarEnumToString(pChild->GetType()) + " for ocPush").c_str()); + } else { // Not sure I can figure out what case this exactly is;) |