[Libreoffice-commits] core.git: Branch 'libreoffice-4-2' - sc/inc sc/source

Kohei Yoshida kohei.yoshida at collabora.com
Thu Feb 6 06:38:12 PST 2014


 sc/inc/mtvfunctions.hxx        |    2 +-
 sc/source/core/data/column.cxx |    8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

New commits:
commit 25cb5355ce259c29d481eb9c76a4fab53d03e4cb
Author: Kohei Yoshida <kohei.yoshida at collabora.com>
Date:   Mon Feb 3 14:42:30 2014 -0500

    fdo#72470: Correctly calculate the first edit cell row position.
    
    Else it could go into an infinite loop.
    
    Change-Id: I269cd118dcb3ab83ea8a2243576a360d3d4bc142
    (cherry picked from commit 3e2ffb053f9749c6f6990c5ce8f47dc63ea7c148)
    Reviewed-on: https://gerrit.libreoffice.org/7831
    Reviewed-by: Fridrich Strba <fridrich at documentfoundation.org>
    Tested-by: Fridrich Strba <fridrich at documentfoundation.org>

diff --git a/sc/inc/mtvfunctions.hxx b/sc/inc/mtvfunctions.hxx
index 3c2a940..6955d21 100644
--- a/sc/inc/mtvfunctions.hxx
+++ b/sc/inc/mtvfunctions.hxx
@@ -618,7 +618,7 @@ FindElement2(
             break;
             default:
             {
-                ElseRetType aRet = rFuncElse(it->type, nTopRow, nDataSize);
+                ElseRetType aRet = rFuncElse(*it, nOffset);
                 if (aRet.second)
                     return PositionType(it, aRet.first);
             }
diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx
index 0b10328..e358588 100644
--- a/sc/source/core/data/column.cxx
+++ b/sc/source/core/data/column.cxx
@@ -2966,16 +2966,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.


More information about the Libreoffice-commits mailing list