diff options
Diffstat (limited to 'extensions/source/plugin')
-rw-r--r-- | extensions/source/plugin/base/manager.cxx | 9 | ||||
-rw-r--r-- | extensions/source/plugin/inc/plugin/impl.hxx | 3 |
2 files changed, 5 insertions, 7 deletions
diff --git a/extensions/source/plugin/base/manager.cxx b/extensions/source/plugin/base/manager.cxx index b5039b1096dd..a83c4b9b96ff 100644 --- a/extensions/source/plugin/base/manager.cxx +++ b/extensions/source/plugin/base/manager.cxx @@ -57,6 +57,8 @@ #include "com/sun/star/container/XIndexAccess.hpp" #include "com/sun/star/loader/XImplementationLoader.hpp" +#include <cppuhelper/supportsservice.hxx> + PluginManager* PluginManager::pManager = NULL; PluginManager& PluginManager::get() @@ -115,12 +117,7 @@ OUString XPluginManager_Impl::getImplementationName() throw( ) // ::com::sun::star::lang::XServiceInfo sal_Bool XPluginManager_Impl::supportsService(const OUString& ServiceName) throw( ) { - Sequence< OUString > aSNL = getSupportedServiceNames(); - const OUString * pArray = aSNL.getConstArray(); - for( sal_Int32 i = 0; i < aSNL.getLength(); i++ ) - if( pArray[i] == ServiceName ) - return sal_True; - return sal_False; + return cppu::supportsService(this, ServiceName); } // ::com::sun::star::lang::XServiceInfo diff --git a/extensions/source/plugin/inc/plugin/impl.hxx b/extensions/source/plugin/inc/plugin/impl.hxx index 57620f49e760..85be9c80653b 100644 --- a/extensions/source/plugin/inc/plugin/impl.hxx +++ b/extensions/source/plugin/inc/plugin/impl.hxx @@ -288,7 +288,8 @@ public: }; class XPluginManager_Impl : - public cppu::WeakAggImplHelper1< com::sun::star::plugin::XPluginManager > + public cppu::WeakAggImplHelper2< com::sun::star::plugin::XPluginManager, + com::sun::star::lang::XServiceInfo > { Reference< com::sun::star::uno::XComponentContext > m_xContext; public: |