diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2017-07-10 13:57:53 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2017-07-11 16:01:28 +0200 |
commit | 673347af7d37f6789855c17732c9980d91ec6240 (patch) | |
tree | 4447a73900c50db2f949755eca64a91ac2d9a385 /svx/source/xoutdev/_xpoly.cxx | |
parent | 0bc97adb82f14d6ec22f868422cbfe000afec402 (diff) |
loplugin:useuniqueptr in scaddins..svx
Change-Id: I309f98f6b820103a926e9fe94d67d0aff6eb6476
Reviewed-on: https://gerrit.libreoffice.org/39754
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'svx/source/xoutdev/_xpoly.cxx')
-rw-r--r-- | svx/source/xoutdev/_xpoly.cxx | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/svx/source/xoutdev/_xpoly.cxx b/svx/source/xoutdev/_xpoly.cxx index 39d8cfc6aa14..f8d6b12f48f7 100644 --- a/svx/source/xoutdev/_xpoly.cxx +++ b/svx/source/xoutdev/_xpoly.cxx @@ -62,13 +62,12 @@ ImpXPolygon::ImpXPolygon( const ImpXPolygon& rImpXPoly ) // copy nPoints = rImpXPoly.nPoints; memcpy( pPointAry, rImpXPoly.pPointAry, nSize*sizeof( Point ) ); - memcpy( pFlagAry, rImpXPoly.pFlagAry, nSize ); + memcpy( pFlagAry.get(), rImpXPoly.pFlagAry.get(), nSize ); } ImpXPolygon::~ImpXPolygon() { delete[] reinterpret_cast<char*>(pPointAry); - delete[] pFlagAry; if ( bDeleteOldPoints ) { delete[] reinterpret_cast<char*>(pOldPointAry); @@ -80,8 +79,8 @@ bool ImpXPolygon::operator==(const ImpXPolygon& rImpXPoly) const { return nPoints==rImpXPoly.nPoints && (nPoints==0 || - (memcmp(pPointAry,rImpXPoly.pPointAry,nPoints*sizeof(Point))==0 && - memcmp(pFlagAry,rImpXPoly.pFlagAry,nPoints)==0)); + (memcmp(pPointAry, rImpXPoly.pPointAry, nPoints*sizeof(Point))==0 && + memcmp(pFlagAry.get(), rImpXPoly.pFlagAry.get(), nPoints)==0)); } /** Change polygon size @@ -97,7 +96,7 @@ void ImpXPolygon::Resize( sal_uInt16 nNewSize, bool bDeletePoints ) if( nNewSize == nSize ) return; - PolyFlags* pOldFlagAry = pFlagAry; + PolyFlags* pOldFlagAry = pFlagAry.get(); sal_uInt16 nOldSize = nSize; CheckPointDelete(); @@ -116,8 +115,8 @@ void ImpXPolygon::Resize( sal_uInt16 nNewSize, bool bDeletePoints ) memset( pPointAry, 0, nSize*sizeof( Point ) ); // create flag array - pFlagAry = new PolyFlags[ nSize ]; - memset( pFlagAry, 0, nSize ); + pFlagAry.reset( new PolyFlags[ nSize ] ); + memset( pFlagAry.get(), 0, nSize ); // copy if needed if( nOldSize ) @@ -125,12 +124,12 @@ void ImpXPolygon::Resize( sal_uInt16 nNewSize, bool bDeletePoints ) if( nOldSize < nSize ) { memcpy( pPointAry, pOldPointAry, nOldSize*sizeof( Point ) ); - memcpy( pFlagAry, pOldFlagAry, nOldSize ); + memcpy( pFlagAry.get(), pOldFlagAry, nOldSize ); } else { memcpy( pPointAry, pOldPointAry, nSize*sizeof( Point ) ); - memcpy( pFlagAry, pOldFlagAry, nSize ); + memcpy( pFlagAry.get(), pOldFlagAry, nSize ); // adjust number of valid points if( nPoints > nSize ) @@ -383,7 +382,7 @@ void XPolygon::Insert( sal_uInt16 nPos, const XPolygon& rXPoly ) rXPoly.pImpXPolygon->pPointAry, nPoints*sizeof( Point ) ); memcpy( &(pImpXPolygon->pFlagAry[nPos]), - rXPoly.pImpXPolygon->pFlagAry, + rXPoly.pImpXPolygon->pFlagAry.get(), nPoints ); } @@ -835,7 +834,7 @@ basegfx::B2DPolygon XPolygon::getB2DPolygon() const // #i74631# use tools Polygon class for conversion to not have the code doubled // here. This needs one more conversion but avoids different convertors in // the long run - const tools::Polygon aSource(GetPointCount(), pImpXPolygon->pPointAry, pImpXPolygon->pFlagAry); + const tools::Polygon aSource(GetPointCount(), pImpXPolygon->pPointAry, pImpXPolygon->pFlagAry.get()); return aSource.getB2DPolygon(); } |