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

Eike Rathke (via logerrit) logerrit at kemper.freedesktop.org
Tue Apr 6 23:01:42 UTC 2021


 sc/source/core/tool/compiler.cxx |    6 ++++++
 1 file changed, 6 insertions(+)

New commits:
commit 4d4fd4cc57a37a5f24178cf8bac63d979f4323da
Author:     Eike Rathke <erack at redhat.com>
AuthorDate: Tue Apr 6 20:58:25 2021 +0200
Commit:     Eike Rathke <erack at redhat.com>
CommitDate: Wed Apr 7 01:01:00 2021 +0200

    Resolves: tdf#128334 Reset mnCurrentSheetEndPos, mnCurrentSheetTab in all cases
    
    Encountered for a single decimal separator not being a value
    either, but could be for any condition within IsReference()
    returning false up to the IsSingleReference() call.
    
    Change-Id: I6222adf2a2d06904001175da8798b2ba9fdef99c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113697
    Reviewed-by: Eike Rathke <erack at redhat.com>
    Tested-by: Jenkins

diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx
index faf5d587de42..24ac10e9674a 100644
--- a/sc/source/core/tool/compiler.cxx
+++ b/sc/source/core/tool/compiler.cxx
@@ -3328,6 +3328,12 @@ bool ScCompiler::IsSingleReference( const OUString& rName, const OUString* pErrR
 bool ScCompiler::IsReference( const OUString& rName, const OUString* pErrRef )
 {
     // Has to be called before IsValue
+
+    // A later IsNamedRange() relies on these, being set in IsSingleReference()
+    // if so, reset in all cases.
+    mnCurrentSheetEndPos = 0;
+    mnCurrentSheetTab = -1;
+
     sal_Unicode ch1 = rName[0];
     sal_Unicode cDecSep = ( mxSymbols->isEnglish() ? '.' : ScGlobal::getLocaleDataPtr()->getNumDecimalSep()[0] );
     if ( ch1 == cDecSep )


More information about the Libreoffice-commits mailing list