diff options
author | Tor Lillqvist <tml@collabora.com> | 2015-10-18 22:57:47 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@collabora.com> | 2015-10-18 22:58:39 +0300 |
commit | 476bef70f1d9fd58b29a1f6fb95e54567b031acf (patch) | |
tree | 628b6f997ae6d499dbf83038dc2006f111677ebd | |
parent | a80c3a5c14399802d7bbd6fb9a1b57621a594445 (diff) |
tdf#94924: If we can't handle strings, don't try to then
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.
Change-Id: I4140c86bf8166beb8201aa90c075d9f4432d9173
-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 a7ce5f80af09..ab4fa023c51f 100644 --- a/sc/source/core/opencl/formulagroupcl.cxx +++ b/sc/source/core/opencl/formulagroupcl.cxx @@ -2657,6 +2657,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;) |