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

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Tue Oct 16 08:46:55 UTC 2018


 sc/source/core/data/column4.cxx |   16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

New commits:
commit fbec372ba829b3f32b3c0874920b2ee36220ef9d
Author:     Eike Rathke <erack at redhat.com>
AuthorDate: Mon Oct 15 23:10:07 2018 +0200
Commit:     Eike Rathke <erack at redhat.com>
CommitDate: Tue Oct 16 10:46:19 2018 +0200

    Resolves: tdf#119623 record group positions also for top cells
    
    So listeners can be re-established for remaining grouped cells if
    top cell is deleted (which ends listening and probably was the
    cause to exclude them here).
    
    Change-Id: Ic91b74c65013452d56b5cfbc132722c4314743c8
    Reviewed-on: https://gerrit.libreoffice.org/61808
    Reviewed-by: Eike Rathke <erack at redhat.com>
    Tested-by: Jenkins

diff --git a/sc/source/core/data/column4.cxx b/sc/source/core/data/column4.cxx
index d751131251c8..7e9eb0b63e23 100644
--- a/sc/source/core/data/column4.cxx
+++ b/sc/source/core/data/column4.cxx
@@ -1542,10 +1542,12 @@ void ScColumn::EndListeningIntersectedGroups(
     {
         ScFormulaCell* pFC = sc::formula_block::at(*it->data, aPos.second);
         ScFormulaCellGroupRef xGroup = pFC->GetCellGroup();
-        if (xGroup && !pFC->IsSharedTop())
+        if (xGroup)
         {
-            // End listening.
-            pFC->EndListeningTo(rCxt);
+            if (!pFC->IsSharedTop())
+                // End listening.
+                pFC->EndListeningTo(rCxt);
+
             if (pGroupPos)
                 // Record the position of the top cell of the group.
                 pGroupPos->push_back(xGroup->mpTopCell->aPos);
@@ -1558,10 +1560,12 @@ void ScColumn::EndListeningIntersectedGroups(
     {
         ScFormulaCell* pFC = sc::formula_block::at(*it->data, aPos.second);
         ScFormulaCellGroupRef xGroup = pFC->GetCellGroup();
-        if (xGroup && !pFC->IsSharedTop())
+        if (xGroup)
         {
-            // End listening.
-            pFC->EndListeningTo(rCxt);
+            if (!pFC->IsSharedTop())
+                // End listening.
+                pFC->EndListeningTo(rCxt);
+
             if (pGroupPos)
             {
                 // Record the position of the bottom cell of the group.


More information about the Libreoffice-commits mailing list