summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-12-10 20:15:31 +0000
committerCaolán McNamara <caolanm@redhat.com>2017-12-11 10:19:42 +0100
commite1bd0dd9966c0d525477443bc54c1d2bd6f7d30f (patch)
tree539846240d87e145a0eb29a2b062e6b4d29e11a6
parentadad3724e6c3e85b1b286ccddaf810f3c782424b (diff)
tdf#114342 move recursion guard to encompass threaded path too
Change-Id: If815d3faeb72fd8a176225fb80f87ee584ece3ba Reviewed-on: https://gerrit.libreoffice.org/46195 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Dennis Francis <dennis.francis@collabora.co.uk> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--sc/source/core/data/formulacell.cxx12
1 files changed, 6 insertions, 6 deletions
diff --git a/sc/source/core/data/formulacell.cxx b/sc/source/core/data/formulacell.cxx
index 955be80b4c59..2db3e9cda669 100644
--- a/sc/source/core/data/formulacell.cxx
+++ b/sc/source/core/data/formulacell.cxx
@@ -4342,6 +4342,12 @@ bool ScFormulaCell::InterpretFormulaGroup()
return false;
}
+ // Guard against endless recursion of Interpret() calls, for this to work
+ // ScFormulaCell::InterpretFormulaGroup() must never be called through
+ // anything else than ScFormulaCell::Interpret(), same as
+ // ScFormulaCell::InterpretTail()
+ RecursionCounter aRecursionCounter( pDocument->GetRecursionHelper(), this);
+
if (!bThreadingProhibited && !ScCalcConfig::isOpenCLEnabled() &&
pCode->GetVectorState() == FormulaVectorEnabledForThreading &&
officecfg::Office::Calc::Formula::Calculation::UseThreadedCalculationForFormulaGroups::get())
@@ -4478,12 +4484,6 @@ bool ScFormulaCell::InterpretFormulaGroup()
return false;
}
- // Guard against endless recursion of Interpret() calls, for this to work
- // ScFormulaCell::InterpretFormulaGroup() must never be called through
- // anything else than ScFormulaCell::Interpret(), same as
- // ScFormulaCell::InterpretTail()
- RecursionCounter aRecursionCounter( pDocument->GetRecursionHelper(), this);
-
// TODO : Disable invariant formula group interpretation for now in order
// to get implicit intersection to work.
if (mxGroup->mbInvariant && false)