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

New commits:
commit eec038b982b4672ac8feb030cb6bae546fa8c901
Author:     Czeber László Ádám <czeber.laszloa...@nisz.hu>
AuthorDate: Fri Jun 30 12:24:53 2023 +0200
Commit:     László Németh <nem...@numbertext.org>
CommitDate: Tue Jul 25 10:29:29 2023 +0200

    tdf#117307 sc: Comments are duplicated after Row delete and Undo
    
    The comment was cloned if you deleted and restored its filtered cell.
    During Undo, the comment was cloned even if it was for the
    same cell, resulting duplicated comments there.
    
    Regression from commit eefe13c77d01be37c911e75af191717a944fedb3
    "shrinking the DB area just causes problems, tdf#89546".
    
    Change-Id: I86d0813c56ba63370aae6b5f7807a19747e2378c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153803
    Tested-by: László Németh <nem...@numbertext.org>
    Reviewed-by: László Németh <nem...@numbertext.org>
    (cherry picked from commit 712ec904b68afd965e9108986c29fe9c527c6991)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154707
    Tested-by: Jenkins

diff --git a/sc/source/core/data/postit.cxx b/sc/source/core/data/postit.cxx
index 106a249e5666..cbb2eff1ff14 100644
--- a/sc/source/core/data/postit.cxx
+++ b/sc/source/core/data/postit.cxx
@@ -483,6 +483,9 @@ ScPostIt::~ScPostIt()
 
 std::unique_ptr<ScPostIt> ScPostIt::Clone( const ScAddress& rOwnPos, 
ScDocument& rDestDoc, const ScAddress& rDestPos, bool bCloneCaption ) const
 {
+    // tdf#117307: Don't clone comment, if it is in the same position
+    if ( (rOwnPos == rDestPos) && !mrDoc.IsClipboard() )
+        bCloneCaption = false;
     CreateCaptionFromInitData( rOwnPos );
     sal_uInt32 nPostItId = comphelper::LibreOfficeKit::isActive() ? 0 : 
mnPostItId;
     return bCloneCaption ? std::make_unique<ScPostIt>( rDestDoc, rDestPos, 
*this, nPostItId ) : std::make_unique<ScPostIt>( rDestDoc, rDestPos, 
maNoteData, false, mnPostItId );

Reply via email to