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

Luboš Luňák l.lunak at collabora.com
Tue Jun 12 16:34:32 UTC 2018


 sc/source/core/data/grouptokenconverter.cxx |    4 ++++
 1 file changed, 4 insertions(+)

New commits:
commit bfd0290977b0ae37b9644713d701fca31d88b973
Author: Luboš Luňák <l.lunak at collabora.com>
Date:   Tue Jun 12 11:59:26 2018 +0200

    don't use opencl with deleted cells
    
    Without this testFormulaRefUpdateDeleteAndShiftLeft2 fails with OpenCL
    enabled (and the mnOpenCLMinimumFormulaGroupSize check disabled).
    If I'm getting it right, anything working with #REF! (=invalid reference)
    should result in #REF! too, but without this fix the function effectively
    converted the #REF! to an empty cell.
    
    Change-Id: Icdda64ad751d7c0e9c0d5995673e4fb30c4c9ac4
    Reviewed-on: https://gerrit.libreoffice.org/55672
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Tor Lillqvist <tml at collabora.com>
    (cherry picked from commit 2926c9e40e17a806e29b95d08ddf186904103d33)
    Reviewed-on: https://gerrit.libreoffice.org/55713
    Reviewed-by: Luboš Luňák <l.lunak at collabora.com>
    Tested-by: Luboš Luňák <l.lunak at collabora.com>

diff --git a/sc/source/core/data/grouptokenconverter.cxx b/sc/source/core/data/grouptokenconverter.cxx
index 5fc6b292214e..a388b34d04ec 100644
--- a/sc/source/core/data/grouptokenconverter.cxx
+++ b/sc/source/core/data/grouptokenconverter.cxx
@@ -116,6 +116,8 @@ bool ScGroupTokenConverter::convert( const ScTokenArray& rCode, sc::FormulaLogge
             case svSingleRef:
             {
                 ScSingleRefData aRef = *p->GetSingleRef();
+                if( aRef.IsDeleted())
+                    return false;
                 ScAddress aRefPos = aRef.toAbs(mrPos);
                 if (aRef.IsRowRel())
                 {
@@ -178,6 +180,8 @@ bool ScGroupTokenConverter::convert( const ScTokenArray& rCode, sc::FormulaLogge
 
 #if 0
                 ScComplexRefData aRef = *p->GetDoubleRef();
+                if( aRef.IsDeleted())
+                    return false;
                 ScRange aAbs = aRef.toAbs(mrPos);
 
                 // Multiple sheets not handled by vector/matrix.


More information about the Libreoffice-commits mailing list