diff options
author | Noel Grandin <noel@peralex.com> | 2016-05-26 16:02:39 +0200 |
---|---|---|
committer | Noel Grandin <noelgrandin@gmail.com> | 2016-05-31 06:25:45 +0000 |
commit | 0b23eec200c8c12db5778405df44f4bf8e38e4ad (patch) | |
tree | ee45856fe1781195c51f63835024865f283cdab8 /desktop | |
parent | 88c03cd07a171e05c7fb4dcade8baa28e7c5a770 (diff) |
teach refcounting clang plugin about uno::Reference
uno::Reference is only allowed to used with classes that have a
::static_type member.
So convert all those places to rtl::Reference.
Maybe we need some LIBO_INTERNAL_ONLY constructors on rtl::Reference and
uno::Reference to make this a little smoother?
Change-Id: Icdcb35d71ca40a87b1dc474096776412adbfc7e3
Reviewed-on: https://gerrit.libreoffice.org/25516
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/source/deployment/gui/dp_gui_extlistbox.cxx | 8 | ||||
-rw-r--r-- | desktop/source/deployment/gui/dp_gui_extlistbox.hxx | 2 |
2 files changed, 4 insertions, 6 deletions
diff --git a/desktop/source/deployment/gui/dp_gui_extlistbox.cxx b/desktop/source/deployment/gui/dp_gui_extlistbox.cxx index 34b3fc25f427..47a89d2d3ea9 100644 --- a/desktop/source/deployment/gui/dp_gui_extlistbox.cxx +++ b/desktop/source/deployment/gui/dp_gui_extlistbox.cxx @@ -256,7 +256,7 @@ void ExtensionBox_Impl::dispose() for ( ITER iIndex = m_vEntries.begin(); iIndex < m_vEntries.end(); ++iIndex ) { (*iIndex)->m_pPublisher.disposeAndClear(); - (*iIndex)->m_xPackage->removeEventListener( uno::Reference< lang::XEventListener > ( m_xRemoveListener, uno::UNO_QUERY ) ); + (*iIndex)->m_xPackage->removeEventListener( m_xRemoveListener.get() ); } m_vEntries.clear(); @@ -912,8 +912,7 @@ void ExtensionBox_Impl::addEventListenerOnce( if ( ::std::none_of(m_vListenerAdded.begin(), m_vListenerAdded.end(), FindWeakRef(extension)) ) { - extension->addEventListener( uno::Reference< lang::XEventListener > ( - m_xRemoveListener, uno::UNO_QUERY ) ); + extension->addEventListener( m_xRemoveListener.get() ); m_vListenerAdded.push_back(extension); } } @@ -1026,8 +1025,7 @@ void ExtensionBox_Impl::removeEntry( const uno::Reference< deployment::XPackage // the entry will be moved into the m_vRemovedEntries list which will be // cleared on the next paint event m_vRemovedEntries.push_back( *iIndex ); - (*iIndex)->m_xPackage->removeEventListener( - uno::Reference<lang::XEventListener>(m_xRemoveListener, uno::UNO_QUERY)); + (*iIndex)->m_xPackage->removeEventListener(m_xRemoveListener.get()); m_vEntries.erase( iIndex ); m_bNeedsRecalc = true; diff --git a/desktop/source/deployment/gui/dp_gui_extlistbox.hxx b/desktop/source/deployment/gui/dp_gui_extlistbox.hxx index 1f927f31ee6b..3cee982becdf 100644 --- a/desktop/source/deployment/gui/dp_gui_extlistbox.hxx +++ b/desktop/source/deployment/gui/dp_gui_extlistbox.hxx @@ -130,7 +130,7 @@ class ExtensionBox_Impl : public ::svt::IExtensionListBox VclPtr<ScrollBar> m_pScrollBar; - css::uno::Reference<ExtensionRemovedListener> m_xRemoveListener; + rtl::Reference<ExtensionRemovedListener> m_xRemoveListener; TheExtensionManager *m_pManager; //This mutex is used for synchronizing access to m_vEntries. |