summaryrefslogtreecommitdiff
path: root/sc/source/ui
diff options
context:
space:
mode:
authorJulien Nabet <serval2412@yahoo.fr>2017-05-18 00:03:32 +0200
committerEike Rathke <erack@redhat.com>2017-05-18 13:28:42 +0200
commit63843a97262ccfa38d838a9cbbc3faadba8290a6 (patch)
tree411204f433a382e1aeecb283120bd9378d2922db /sc/source/ui
parente4e093b90e9a2d65cb538ec0e752ba51d75b4b0b (diff)
tdf#107920: Crash when using ScCompiler in condformat
Just call SetGrammar from ScCompiler object with grammar of document See bt in https://bugs.documentfoundation.org/attachment.cgi?id=133382 Change-Id: Iedf4b88f2821bbcf728e4b1c023041fd6f10e5f3 Reviewed-on: https://gerrit.libreoffice.org/37739 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Eike Rathke <erack@redhat.com>
Diffstat (limited to 'sc/source/ui')
-rw-r--r--sc/source/ui/unoobj/condformatuno.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/sc/source/ui/unoobj/condformatuno.cxx b/sc/source/ui/unoobj/condformatuno.cxx
index e97311a6cff1..549fb6710fd4 100644
--- a/sc/source/ui/unoobj/condformatuno.cxx
+++ b/sc/source/ui/unoobj/condformatuno.cxx
@@ -717,6 +717,7 @@ void SAL_CALL ScConditionEntryObj::setPropertyValue(
if ((aValue >>= aFormula) && !aFormula.isEmpty())
{
ScCompiler aComp(&mpDocShell->GetDocument(), getCoreObject()->GetSrcPos());
+ aComp.SetGrammar(mpDocShell->GetDocument().GetGrammar());
std::unique_ptr<ScTokenArray> pArr(aComp.CompileString(aFormula));
getCoreObject()->SetFormula1(*pArr);
}
@@ -728,6 +729,7 @@ void SAL_CALL ScConditionEntryObj::setPropertyValue(
if ((aValue >>= aFormula) && !aFormula.isEmpty())
{
ScCompiler aComp(&mpDocShell->GetDocument(), getCoreObject()->GetSrcPos());
+ aComp.SetGrammar(mpDocShell->GetDocument().GetGrammar());
std::unique_ptr<ScTokenArray> pArr(aComp.CompileString(aFormula));
getCoreObject()->SetFormula2(*pArr);
}