summaryrefslogtreecommitdiff
path: root/svx/source/xoutdev/_xpoly.cxx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2017-07-10 13:57:53 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2017-07-11 16:01:28 +0200
commit673347af7d37f6789855c17732c9980d91ec6240 (patch)
tree4447a73900c50db2f949755eca64a91ac2d9a385 /svx/source/xoutdev/_xpoly.cxx
parent0bc97adb82f14d6ec22f868422cbfe000afec402 (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.cxx21
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();
}