[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - sc/source
Eike Rathke
erack at redhat.com
Thu Dec 3 04:22:05 PST 2015
sc/source/core/data/formulacell.cxx | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
New commits:
commit e389e2b2d9bc87e451628e6f3f227d0eb781cf8b
Author: Eike Rathke <erack at redhat.com>
Date: Tue Dec 1 14:09:02 2015 +0100
Resolves: tdf#95748 no group interpreter when calculations are running
(cherry picked from commit d46203b55d92185ab2c1d3ac79761100d26aaee3)
Conflicts:
sc/source/core/data/formulacell.cxx
Change-Id: I17283fc5e39da2d7222c302dd63522df69d0ad96
Reviewed-on: https://gerrit.libreoffice.org/20328
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sc/source/core/data/formulacell.cxx b/sc/source/core/data/formulacell.cxx
index 1bb5e4c..11d56f3 100644
--- a/sc/source/core/data/formulacell.cxx
+++ b/sc/source/core/data/formulacell.cxx
@@ -1479,8 +1479,16 @@ void ScFormulaCell::Interpret()
}
else
{
- if ( ! InterpretFormulaGroup() )
+ // Do not attempt to interpret a group when calculations are already
+ // running, otherwise we may run into a circular reference hell. See
+ // tdf#95748
+ if (rRecursionHelper.GetRecursionCount())
InterpretTail( SCITP_NORMAL);
+ else
+ {
+ if (!InterpretFormulaGroup())
+ InterpretTail( SCITP_NORMAL);
+ }
}
// While leaving a recursion or iteration stack, insert its cells to the
More information about the Libreoffice-commits
mailing list