tdf#163691 Use std::copy_n() instead of memcpy() in editeng

Replace memcpy() with std::copy_n() in impedit3.cxx to improve
type safety by eliminating manual sizeof() calculations.

Change-Id: I8f0dc51007f211dbf22689a2a50916657d0c53f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204357
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
This commit is contained in:
Asim Raza
2026-04-27 09:25:26 +02:00
committed by Julien Nabet
parent f229c646e9
commit 112c6bce72
+2 -1
View File
@@ -78,6 +78,7 @@
#include <o3tl/sorted_vector.hxx>
#include <osl/diagnose.h>
#include <comphelper/string.hxx>
#include <algorithm>
#include <cstddef>
#include <memory>
@@ -4990,7 +4991,7 @@ void ImpEditEngine::ImplExpandCompressedPortions(EditLine& rLine, ParaPortion& r
DBG_ASSERT( nTxtPortionStart >= rLine.GetStart(), "Portion doesn't belong to the line!!!" );
double* pDXArray = rLine.GetCharPosArray().data() + (nTxtPortionStart - rLine.GetStart());
if ( pTP->GetExtraInfos()->pOrgDXArray )
memcpy( pDXArray, pTP->GetExtraInfos()->pOrgDXArray.get(), (pTP->GetLen()-1)*sizeof(double) );
std::copy_n( pTP->GetExtraInfos()->pOrgDXArray.get(), pTP->GetLen()-1, pDXArray );
ImplCalcAsianCompression( rParaPortion.GetNode(), pTP, nTxtPortionStart, pDXArray, static_cast<sal_uInt16>(nCompressPercent), true );
}
}