summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2016-05-23 13:53:42 +0200
committerNoel Grandin <noelgrandin@gmail.com>2016-05-24 06:54:06 +0000
commit111de438ea3e512a541281dc0716cc728ea8d152 (patch)
tree2c9ca866e79ed0cfc9299e553a87239345c515a6 /sd
parentd3f21849ec8580fdb59a1f0b35453657f4050e0f (diff)
remove some manual ref-counting
triggered when I noticed a class doing acquire() in the constructor and then release() in the destructor. found mostly by git grep -n -B5 -e '->release()' Change-Id: Ie1abeaed75c1f861df185e3bde680272dbadc97f Reviewed-on: https://gerrit.libreoffice.org/25363 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Diffstat (limited to 'sd')
-rw-r--r--sd/source/ui/inc/DrawViewShell.hxx2
-rw-r--r--sd/source/ui/inc/OutlineViewShell.hxx2
-rw-r--r--sd/source/ui/view/drviews7.cxx7
-rw-r--r--sd/source/ui/view/drviewsa.cxx10
-rw-r--r--sd/source/ui/view/outlnvsh.cxx15
5 files changed, 16 insertions, 20 deletions
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
index b96a0e2bfd6f..e5288089da14 100644
--- a/sd/source/ui/inc/DrawViewShell.hxx
+++ b/sd/source/ui/inc/DrawViewShell.hxx
@@ -446,7 +446,7 @@ private:
css::uno::Reference< css::scanner::XScannerManager2 > mxScannerManager;
css::uno::Reference< css::lang::XEventListener > mxScannerListener;
- TransferableClipboardListener* mpClipEvtLstnr;
+ css::uno::Reference<TransferableClipboardListener> mxClipEvtLstnr;
bool mbPastePossible;
virtual void Notify (SfxBroadcaster& rBC, const SfxHint& rHint) override;
diff --git a/sd/source/ui/inc/OutlineViewShell.hxx b/sd/source/ui/inc/OutlineViewShell.hxx
index b57bc50151fa..01a57a305ac9 100644
--- a/sd/source/ui/inc/OutlineViewShell.hxx
+++ b/sd/source/ui/inc/OutlineViewShell.hxx
@@ -152,7 +152,7 @@ private:
void ShowSlideShow(SfxRequest& rReq);
OutlineView* pOlView;
SdPage* pLastPage; // For efficient processing of the preview
- TransferableClipboardListener* pClipEvtLstnr;
+ css::uno::Reference<TransferableClipboardListener> mxClipEvtLstnr;
bool bPastePossible;
bool mbInitialized;
diff --git a/sd/source/ui/view/drviews7.cxx b/sd/source/ui/view/drviews7.cxx
index cd3162ec40e2..a774b113c429 100644
--- a/sd/source/ui/view/drviews7.cxx
+++ b/sd/source/ui/view/drviews7.cxx
@@ -608,7 +608,7 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
SfxItemState::DEFAULT == rSet.GetItemState( SID_PASTE_UNFORMATTED ) ||
SfxItemState::DEFAULT == rSet.GetItemState( SID_CLIPBOARD_FORMAT_ITEMS ) )
{
- if ( !mpClipEvtLstnr )
+ if ( !mxClipEvtLstnr.is() )
{
// avoid clipboard initialization for
// read-only presentation views (workaround for NT4.0
@@ -616,9 +616,8 @@ void DrawViewShell::GetMenuState( SfxItemSet &rSet )
if( dynamic_cast< const PresentationViewShell *>( this ) == nullptr )
{
// create listener
- mpClipEvtLstnr = new TransferableClipboardListener( LINK( this, DrawViewShell, ClipboardChanged ) );
- mpClipEvtLstnr->acquire();
- mpClipEvtLstnr->AddRemoveListener( GetActiveWindow(), true );
+ mxClipEvtLstnr = new TransferableClipboardListener( LINK( this, DrawViewShell, ClipboardChanged ) );
+ mxClipEvtLstnr->AddRemoveListener( GetActiveWindow(), true );
// get initial state
TransferableDataHelper aDataHelper( TransferableDataHelper::CreateFromSystemClipboard( GetActiveWindow() ) );
diff --git a/sd/source/ui/view/drviewsa.cxx b/sd/source/ui/view/drviewsa.cxx
index 52cd788cf58a..afa1c293533f 100644
--- a/sd/source/ui/view/drviewsa.cxx
+++ b/sd/source/ui/view/drviewsa.cxx
@@ -177,11 +177,11 @@ DrawViewShell::~DrawViewShell()
}
}
- if ( mpClipEvtLstnr )
+ if ( mxClipEvtLstnr.is() )
{
- mpClipEvtLstnr->AddRemoveListener( GetActiveWindow(), false );
- mpClipEvtLstnr->ClearCallbackLink(); // prevent callback if another thread is waiting
- mpClipEvtLstnr->release();
+ mxClipEvtLstnr->AddRemoveListener( GetActiveWindow(), false );
+ mxClipEvtLstnr->ClearCallbackLink(); // prevent callback if another thread is waiting
+ mxClipEvtLstnr.clear();
}
delete mpDrawView;
@@ -201,7 +201,7 @@ void DrawViewShell::Construct(DrawDocShell* pDocSh, PageKind eInitialPageKind)
mpActualPage = nullptr;
mbMousePosFreezed = false;
mbReadOnly = GetDocSh()->IsReadOnly();
- mpClipEvtLstnr = nullptr;
+ mxClipEvtLstnr.clear();
mbPastePossible = false;
mbIsLayerModeActive = false;
diff --git a/sd/source/ui/view/outlnvsh.cxx b/sd/source/ui/view/outlnvsh.cxx
index 86f71567221a..3f35f85cfec8 100644
--- a/sd/source/ui/view/outlnvsh.cxx
+++ b/sd/source/ui/view/outlnvsh.cxx
@@ -191,7 +191,6 @@ OutlineViewShell::OutlineViewShell (
: ViewShell(pFrame, pParentWindow, rViewShellBase),
pOlView(nullptr),
pLastPage( nullptr ),
- pClipEvtLstnr(nullptr),
bPastePossible(false),
mbInitialized(false)
@@ -220,11 +219,10 @@ OutlineViewShell::~OutlineViewShell()
mpFrameView->Disconnect();
- if ( pClipEvtLstnr )
+ if ( mxClipEvtLstnr.is() )
{
- pClipEvtLstnr->AddRemoveListener( GetActiveWindow(), false );
- pClipEvtLstnr->ClearCallbackLink(); // prevent callback if another thread is waiting
- pClipEvtLstnr->release();
+ mxClipEvtLstnr->AddRemoveListener( GetActiveWindow(), false );
+ mxClipEvtLstnr->ClearCallbackLink(); // prevent callback if another thread is waiting
}
}
@@ -883,12 +881,11 @@ void OutlineViewShell::GetMenuState( SfxItemSet &rSet )
if( SfxItemState::DEFAULT == rSet.GetItemState( SID_PASTE ) )
{
- if ( !pClipEvtLstnr )
+ if ( !mxClipEvtLstnr.is() )
{
// create listener
- pClipEvtLstnr = new TransferableClipboardListener( LINK( this, OutlineViewShell, ClipboardChanged ) );
- pClipEvtLstnr->acquire();
- pClipEvtLstnr->AddRemoveListener( GetActiveWindow(), true );
+ mxClipEvtLstnr = new TransferableClipboardListener( LINK( this, OutlineViewShell, ClipboardChanged ) );
+ mxClipEvtLstnr->AddRemoveListener( GetActiveWindow(), true );
// get initial state
TransferableDataHelper aDataHelper( TransferableDataHelper::CreateFromSystemClipboard( GetActiveWindow() ) );