summaryrefslogtreecommitdiff
path: root/sc/source
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-02-03 14:42:30 -0500
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-02-03 14:45:10 -0500
commit3e2ffb053f9749c6f6990c5ce8f47dc63ea7c148 (patch)
tree481732b0859fef231a7f51b152dd187bd319e2b2 /sc/source
parent99a262dc954c19ebd8d07fa8b0f9c9f9a45305a8 (diff)
fdo#72470: Correctly calculate the first edit cell row position.
Else it could go into an infinite loop. Change-Id: I269cd118dcb3ab83ea8a2243576a360d3d4bc142
Diffstat (limited to 'sc/source')
-rw-r--r--sc/source/core/data/column.cxx8
1 files changed, 4 insertions, 4 deletions
diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx
index 7771f0e065f8..f65c3c72063f 100644
--- a/sc/source/core/data/column.cxx
+++ b/sc/source/core/data/column.cxx
@@ -2956,16 +2956,16 @@ public:
return const_cast<ScFormulaCell*>(p)->IsMultilineResult();
}
- std::pair<size_t,bool> operator() (mdds::mtv::element_t type, size_t nTopRow, size_t nDataSize)
+ std::pair<size_t,bool> operator() (const sc::CellStoreType::value_type& node, size_t nOffset)
{
typedef std::pair<size_t,bool> RetType;
- if (type == sc::element_type_empty)
+ if (node.type == sc::element_type_empty)
return RetType(0, false);
- for (size_t i = 0; i < nDataSize; ++i)
+ for (size_t i = nOffset; i < node.size; ++i)
{
- SCROW nRow = nTopRow + i;
+ SCROW nRow = node.position + i;
sal_uInt8 nScriptType = mrColumn.GetRangeScriptType(miAttrPos, nRow, nRow, miCellPos);
if (IsAmbiguousScriptNonZero(nScriptType))
// Return the offset from the first row.