From dba7aaff1ac2e175f8a79caef7573d9120cf7c5c Mon Sep 17 00:00:00 2001 From: Xisco Fauli Date: Sun, 22 May 2016 17:29:23 +0200 Subject: tdf#89329: use unique_ptr for pImpl in printer Change-Id: I8adbac922b7a44ae99325a489f87762dd86397de Reviewed-on: https://gerrit.libreoffice.org/25316 Tested-by: Jenkins Reviewed-by: Noel Grandin --- sfx2/source/view/printer.cxx | 33 +++++++++++++-------------------- 1 file changed, 13 insertions(+), 20 deletions(-) (limited to 'sfx2/source/view') diff --git a/sfx2/source/view/printer.cxx b/sfx2/source/view/printer.cxx index 566351dce72e..7f95cf8c2992 100644 --- a/sfx2/source/view/printer.cxx +++ b/sfx2/source/view/printer.cxx @@ -102,25 +102,21 @@ SfxPrinter::SfxPrinter( SfxItemSet* pTheOptions ) : This constructor creates a default printer. */ - pOptions( pTheOptions ), - bKnown(true) - + pImpl( new SfxPrinter_Impl ), + bKnown( true ) { assert(pOptions); - pImpl = new SfxPrinter_Impl; } SfxPrinter::SfxPrinter( SfxItemSet* pTheOptions, const JobSetup& rTheOrigJobSetup ) : - - Printer ( rTheOrigJobSetup.GetPrinterName() ), - pOptions ( pTheOptions ) - + Printer( rTheOrigJobSetup.GetPrinterName() ), + pOptions( pTheOptions ), + pImpl( new SfxPrinter_Impl ) { assert(pOptions); - pImpl = new SfxPrinter_Impl; bKnown = GetName() == rTheOrigJobSetup.GetPrinterName(); if ( bKnown ) @@ -130,29 +126,26 @@ SfxPrinter::SfxPrinter( SfxItemSet* pTheOptions, SfxPrinter::SfxPrinter( SfxItemSet* pTheOptions, const OUString& rPrinterName ) : - - Printer ( rPrinterName ), - pOptions ( pTheOptions ), - bKnown ( GetName() == rPrinterName ) - + Printer( rPrinterName ), + pOptions( pTheOptions ), + pImpl( new SfxPrinter_Impl ), + bKnown( GetName() == rPrinterName ) { assert(pOptions); - pImpl = new SfxPrinter_Impl; } SfxPrinter::SfxPrinter( const SfxPrinter& rPrinter ) : - - Printer ( rPrinter.GetName() ), + Printer( rPrinter.GetName() ), pOptions( rPrinter.GetOptions().Clone() ), - bKnown ( rPrinter.IsKnown() ) + pImpl( new SfxPrinter_Impl ), + bKnown( rPrinter.IsKnown() ) { assert(pOptions); SetJobSetup( rPrinter.GetJobSetup() ); SetPrinterProps( &rPrinter ); SetMapMode( rPrinter.GetMapMode() ); - pImpl = new SfxPrinter_Impl; pImpl->mbAll = rPrinter.pImpl->mbAll; pImpl->mbSelection = rPrinter.pImpl->mbSelection; pImpl->mbFromTo = rPrinter.pImpl->mbFromTo; @@ -187,7 +180,7 @@ SfxPrinter::~SfxPrinter() void SfxPrinter::dispose() { delete pOptions; - delete pImpl; + pImpl.reset(); Printer::dispose(); } -- cgit