diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2013-08-16 12:31:07 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2013-08-16 12:31:07 +0200 |
commit | 889da158066e3d0e6bced748d0dd4c7730cf8912 (patch) | |
tree | 9ed03d3d04f87b7c38ca59117e9a944c9a6307ce | |
parent | c8e327092a8419636ae447b3b82052e6aeb724a0 (diff) |
Use cppu::WeakImplHelper
...and get rid of hand-coded queryInterface implementations that use
dynamic_cast. My claim at <http://lists.cs.uiuc.edu/pipermail/cfe-commits/
Week-of-Mon-20130812/086127.html> "ubsan: check type_info equality via strcmp"
that "there should not be uses of dynamic_cast involving [UNO] classes in the
LibreOffice code base" made me wonder...
Change-Id: Ic7702fd00b8e5c79399124c0acf12c80bc71a86f
-rw-r--r-- | comphelper/source/misc/docpasswordrequest.cxx | 40 | ||||
-rw-r--r-- | include/comphelper/docpasswordrequest.hxx | 18 |
2 files changed, 2 insertions, 56 deletions
diff --git a/comphelper/source/misc/docpasswordrequest.cxx b/comphelper/source/misc/docpasswordrequest.cxx index a674f7246026..c0a59a79ab70 100644 --- a/comphelper/source/misc/docpasswordrequest.cxx +++ b/comphelper/source/misc/docpasswordrequest.cxx @@ -106,26 +106,6 @@ SimplePasswordRequest::~SimplePasswordRequest() { } -/*uno::*/Any SAL_CALL SimplePasswordRequest::queryInterface( const /*uno::*/Type& rType ) throw (RuntimeException) -{ - return ::cppu::queryInterface ( rType, - // OWeakObject interfaces - dynamic_cast< XInterface* > ( (XInteractionRequest *) this ), - static_cast< XWeak* > ( this ), - // my own interfaces - static_cast< XInteractionRequest* > ( this ) ); -} - -void SAL_CALL SimplePasswordRequest::acquire( ) throw () -{ - OWeakObject::acquire(); -} - -void SAL_CALL SimplePasswordRequest::release( ) throw () -{ - OWeakObject::release(); -} - sal_Bool SimplePasswordRequest::isPassword() const { return mpPassword->isSelected(); @@ -182,26 +162,6 @@ DocPasswordRequest::~DocPasswordRequest() { } -/*uno::*/Any SAL_CALL DocPasswordRequest::queryInterface( const /*uno::*/Type& rType ) throw (RuntimeException) -{ - return ::cppu::queryInterface ( rType, - // OWeakObject interfaces - dynamic_cast< XInterface* > ( (XInteractionRequest *) this ), - static_cast< XWeak* > ( this ), - // my own interfaces - static_cast< XInteractionRequest* > ( this ) ); -} - -void SAL_CALL DocPasswordRequest::acquire( ) throw () -{ - OWeakObject::acquire(); -} - -void SAL_CALL DocPasswordRequest::release( ) throw () -{ - OWeakObject::release(); -} - sal_Bool DocPasswordRequest::isPassword() const { return mpPassword->isSelected(); diff --git a/include/comphelper/docpasswordrequest.hxx b/include/comphelper/docpasswordrequest.hxx index 54a32f522ae6..ffeaacba5d46 100644 --- a/include/comphelper/docpasswordrequest.hxx +++ b/include/comphelper/docpasswordrequest.hxx @@ -24,8 +24,6 @@ #include <com/sun/star/task/PasswordRequestMode.hpp> #include <com/sun/star/task/XInteractionRequest.hpp> #include <cppuhelper/implbase1.hxx> -#include <cppuhelper/weak.hxx> - namespace comphelper { @@ -44,18 +42,12 @@ enum DocPasswordRequestType // ============================================================================ class COMPHELPER_DLLPUBLIC SimplePasswordRequest : - public ::com::sun::star::task::XInteractionRequest, - public ::cppu::OWeakObject + public cppu::WeakImplHelper1<css::task::XInteractionRequest> { public: explicit SimplePasswordRequest( com::sun::star::task::PasswordRequestMode eMode ); virtual ~SimplePasswordRequest(); - // XInterface / OWeakObject - virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL acquire( ) throw (); - virtual void SAL_CALL release( ) throw (); - sal_Bool isPassword() const; OUString getPassword() const; @@ -78,8 +70,7 @@ private: string for a document. */ class COMPHELPER_DLLPUBLIC DocPasswordRequest : - public ::com::sun::star::task::XInteractionRequest, - public ::cppu::OWeakObject + public cppu::WeakImplHelper1<css::task::XInteractionRequest> { public: explicit DocPasswordRequest( @@ -89,11 +80,6 @@ public: sal_Bool bPasswordToModify = sal_False ); virtual ~DocPasswordRequest(); - // XInterface / OWeakObject - virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw (::com::sun::star::uno::RuntimeException); - virtual void SAL_CALL acquire( ) throw (); - virtual void SAL_CALL release( ) throw (); - sal_Bool isPassword() const; OUString getPassword() const; |