[Libreoffice-commits] core.git: sc/source

Eike Rathke erack at redhat.com
Tue Jun 14 12:28:22 UTC 2016


 sc/source/core/tool/interpr4.cxx |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit 243f19a1878d52a4074b59041dc3bc57ab84e417
Author: Eike Rathke <erack at redhat.com>
Date:   Tue Jun 14 14:07:26 2016 +0200

    check ExternalSingleRef token for svDouble type
    
    ... before accessing GetDouble(). Else convert the string.
    The new assert() introduced in FormulaToken::GetDouble() virtual dummy
    was hit by loading gnome334723-1.sxc
    
    Change-Id: I144b0cabee3aac44d206d76a83b1c4d81ab4a02e

diff --git a/sc/source/core/tool/interpr4.cxx b/sc/source/core/tool/interpr4.cxx
index eff2871..2f6c4fa 100644
--- a/sc/source/core/tool/interpr4.cxx
+++ b/sc/source/core/tool/interpr4.cxx
@@ -2040,7 +2040,12 @@ double ScInterpreter::GetDouble()
             ScExternalRefCache::TokenRef pToken;
             PopExternalSingleRef(pToken);
             if (!nGlobalError && pToken)
-                nVal = pToken->GetDouble();
+            {
+                if (pToken->GetType() == svDouble)
+                    nVal = pToken->GetDouble();
+                else
+                    nVal = ConvertStringToValue( pToken->GetString().getString());
+            }
         }
         break;
         case svExternalDoubleRef:


More information about the Libreoffice-commits mailing list