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

Noel Grandin (via logerrit) logerrit at kemper.freedesktop.org
Fri Jul 16 14:04:41 UTC 2021


 svl/source/items/itemset.cxx |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

New commits:
commit 892bc8a15a09081b3de0afb9420abb5c2d110ea4
Author:     Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Fri Jul 16 12:07:40 2021 +0200
Commit:     Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Fri Jul 16 16:04:05 2021 +0200

    -Werror=class-memaccess
    
    gcc doesn't like memcpy here
    
    error: ‘void* memcpy(void*, const void*, size_t)’ writing to an object
    of type ‘struct std::pair<short unsigned int, short unsigned int>’ with
    no trivial copy-assignment; use copy-assignment or copy-initialization
    instead [-Werror=class-memaccess]
     1459 |         memcpy(p, other.m_pairs, m_size * sizeof(WhichPair));
    
    Change-Id: I44055d0d4dec589af7f98d62f106b701f1f5a4cd
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119063
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>

diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index f96d0c9c8ef1..324cf6da69f0 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -1418,7 +1418,8 @@ SfxItemSet SfxAllItemSet::CloneAsValue(bool , SfxItemPool * ) const
 WhichRangesContainer::WhichRangesContainer( const WhichPair* wids, sal_Int32 nSize )
 {
     auto p = new WhichPair[nSize];
-    memcpy(p, wids, nSize * sizeof(WhichPair));
+    for (int i=0; i<nSize; ++i)
+        p[i] = wids[i];
     m_pairs = p;
     m_size = nSize;
     m_bOwnRanges = true;
@@ -1455,7 +1456,8 @@ WhichRangesContainer& WhichRangesContainer::operator=(WhichRangesContainer const
     if (m_bOwnRanges)
     {
         auto p = new WhichPair[m_size];
-        memcpy(p, other.m_pairs, m_size * sizeof(WhichPair));
+        for (int i=0; i<m_size; ++i)
+            p[i] = other.m_pairs[i];
         m_pairs = p;
     }
     else


More information about the Libreoffice-commits mailing list