[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - sc/source

Caolán McNamara caolanm at redhat.com
Mon Oct 12 04:28:17 PDT 2015


 sc/source/core/tool/interpr3.cxx |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

New commits:
commit 595fb25648627c1db68c5df4852136dd7fb420d3
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri Oct 9 16:35:33 2015 +0100

    crashtestig: infinite recurse in ooo32833-1.sxc
    
    integralPhi is called with nan(0xfffff000001f6)
    which recurses through rtl_math_erfc->rtl_math_erf->rtl_math_erfc
    until we run out of stack
    
    Change-Id: Iab8a22fb23686d22d151f2508dbeb44ab47a76b7
    (cherry picked from commit d2a07cd3214af27c5af601992e3c4a1a6e3b3dad)
    Reviewed-on: https://gerrit.libreoffice.org/19282
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Eike Rathke <erack at redhat.com>
    Tested-by: Eike Rathke <erack at redhat.com>

diff --git a/sc/source/core/tool/interpr3.cxx b/sc/source/core/tool/interpr3.cxx
index 066394d..ec2fbdc 100644
--- a/sc/source/core/tool/interpr3.cxx
+++ b/sc/source/core/tool/interpr3.cxx
@@ -1598,7 +1598,10 @@ void ScInterpreter::ScLogNormDist( int nMinParamCount ) //expanded, see #i100119
 
 void ScInterpreter::ScStdNormDist()
 {
-    PushDouble(integralPhi(GetDouble()));
+    double fVal = GetDouble();
+    if (!rtl::math::isNan(fVal))
+        fVal = integralPhi(fVal);
+    PushDouble(fVal);
 }
 
 void ScInterpreter::ScStdNormDist_MS()


More information about the Libreoffice-commits mailing list