sc/source/core/tool/token.cxx | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-)
New commits: commit b366adcf5aca8bb22ccd0dd270ab08e9c8976b5b Author: Eike Rathke <er...@redhat.com> Date: Wed Dec 20 21:32:55 2017 +0100 Invert logic, include only known good, tdf#114251 related Change-Id: Ic362ad6c35f7f6374fc262029251e48e4f82d778 Reviewed-on: https://gerrit.libreoffice.org/46863 Reviewed-by: Eike Rathke <er...@redhat.com> Tested-by: Jenkins <c...@libreoffice.org> diff --git a/sc/source/core/tool/token.cxx b/sc/source/core/tool/token.cxx index bb7ecc9650a9..6979ed459bb7 100644 --- a/sc/source/core/tool/token.cxx +++ b/sc/source/core/tool/token.cxx @@ -1670,11 +1670,18 @@ void ScTokenArray::CheckToken( const FormulaToken& r ) // All the rest, special commands, separators, error codes, ... switch (eOp) { + default: + // Default is off, no vectorization. + // Mentioning some specific values below to indicate why. + case ocName: // Named expression would need "recursive" handling of its // token array for vector state in // ScFormulaCell::InterpretFormulaGroup() and below. + case ocDBArea: + // Certainly not a vectorization of the entire area.. + case ocTableRef: // May result in a single cell or range reference, depending on // context. @@ -1692,8 +1699,30 @@ void ScTokenArray::CheckToken( const FormulaToken& r ) mbOpenCLEnabled = false; CheckForThreading(eOp); break; - default: - ; // nothing + + // Known good, don't change state. + case ocStop: + case ocExternal: + case ocOpen: + case ocClose: + case ocSep: + case ocArrayOpen: + case ocArrayRowSep: + case ocArrayColSep: + case ocArrayClose: + case ocMissing: + case ocBad: + case ocSpaces: + case ocSkip: + case ocPercentSign: + case ocErrNull: + case ocErrDivZero: + case ocErrValue: + case ocErrRef: + case ocErrName: + case ocErrNum: + case ocErrNA: + break; } } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits