diff options
author | Luboš Luňák <l.lunak@collabora.com> | 2018-06-08 21:14:19 +0200 |
---|---|---|
committer | Kohei Yoshida <libreoffice@kohei.us> | 2018-06-09 04:58:10 +0200 |
commit | cbe3ae1894800a5fddbd598403be54f9495cc964 (patch) | |
tree | 89d19f4e48e609038c8b1367271f1d951fe46b6f /sc/source/core/data | |
parent | c4c56de1b0e62ec866b519b2b24c5e805f0a86d3 (diff) |
properly go to next row when walking mdds container
Since only elements from nOffset up to nEnd are iterated, then the difference
is not just nEnd but (nEnd-nOffset).
Without this, ScColumn::HandleRefArrayForParallelism() skips some cells
and e.g. fdo#77750-1 asserts in ScFormulaCell::MaybeInterpret().
Change-Id: I4d595e9faff51f08bf074d549185c24aa00d8a45
Reviewed-on: https://gerrit.libreoffice.org/55488
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Kohei Yoshida <libreoffice@kohei.us>
Tested-by: Kohei Yoshida <libreoffice@kohei.us>
Diffstat (limited to 'sc/source/core/data')
-rw-r--r-- | sc/source/core/data/column.cxx | 2 | ||||
-rw-r--r-- | sc/source/core/data/column2.cxx | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx index ae6813988293..d7c25de498de 100644 --- a/sc/source/core/data/column.cxx +++ b/sc/source/core/data/column.cxx @@ -184,7 +184,7 @@ sc::MatrixEdge ScColumn::GetBlockMatrixEdges( SCROW nRow1, SCROW nRow2, sc::Matr bOpen = false; // bottom edge closes } - nRow += nEnd; + nRow += nEnd - nOffset; } if (bOpen) nEdges |= MatrixEdge::Open; // not closed, matrix continues diff --git a/sc/source/core/data/column2.cxx b/sc/source/core/data/column2.cxx index 3c856fd161cd..6eb7697d074f 100644 --- a/sc/source/core/data/column2.cxx +++ b/sc/source/core/data/column2.cxx @@ -2841,7 +2841,7 @@ bool ScColumn::HandleRefArrayForParallelism( SCROW nRow1, SCROW nRow2 ) // Loop inside the formula block. (*itCell)->MaybeInterpret(); } - nRow += nEnd; + nRow += nEnd - nOffset; break; } default: |