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

Eike Rathke erack at redhat.com
Tue Jun 14 15:05:52 UTC 2016


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

New commits:
commit 91eb9901be5d61d6fcd930a898f2ddc372667aab
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
    (cherry picked from commit 243f19a1878d52a4074b59041dc3bc57ab84e417)
    Reviewed-on: https://gerrit.libreoffice.org/26261
    Reviewed-by: Markus Mohrhard <markus.mohrhard at googlemail.com>
    Tested-by: Jenkins <ci at libreoffice.org>

diff --git a/sc/source/core/tool/interpr4.cxx b/sc/source/core/tool/interpr4.cxx
index cbdc51e..9cf3ed1 100644
--- a/sc/source/core/tool/interpr4.cxx
+++ b/sc/source/core/tool/interpr4.cxx
@@ -1990,7 +1990,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