diff options
Diffstat (limited to 'svgio')
-rw-r--r-- | svgio/source/svgreader/svgtextpathnode.cxx | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/svgio/source/svgreader/svgtextpathnode.cxx b/svgio/source/svgreader/svgtextpathnode.cxx index dae7f4e47bd8..288782cfbcff 100644 --- a/svgio/source/svgreader/svgtextpathnode.cxx +++ b/svgio/source/svgreader/svgtextpathnode.cxx @@ -44,7 +44,7 @@ namespace svgio const sal_uInt32 mnMaxIndex; sal_uInt32 mnIndex; basegfx::B2DCubicBezier maCurrentSegment; - basegfx::B2DCubicBezierHelper* mpB2DCubicBezierHelper; + std::unique_ptr<basegfx::B2DCubicBezierHelper> mpB2DCubicBezierHelper; double mfCurrentSegmentLength; double mfSegmentStartPosition; @@ -72,21 +72,17 @@ namespace svgio void pathTextBreakupHelper::freeB2DCubicBezierHelper() { - if(mpB2DCubicBezierHelper) - { - delete mpB2DCubicBezierHelper; - mpB2DCubicBezierHelper = nullptr; - } + mpB2DCubicBezierHelper.reset(); } basegfx::B2DCubicBezierHelper* pathTextBreakupHelper::getB2DCubicBezierHelper() { if(!mpB2DCubicBezierHelper && maCurrentSegment.isBezier()) { - mpB2DCubicBezierHelper = new basegfx::B2DCubicBezierHelper(maCurrentSegment); + mpB2DCubicBezierHelper.reset(new basegfx::B2DCubicBezierHelper(maCurrentSegment)); } - return mpB2DCubicBezierHelper; + return mpB2DCubicBezierHelper.get(); } void pathTextBreakupHelper::advanceToPosition(double fNewPosition) |