summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-03-28 12:13:46 +0100
committerStephan Bergmann <sbergman@redhat.com>2014-03-28 12:14:53 +0100
commit01cc916fa45081bfb99933ca8f56d7e444a1ae82 (patch)
tree30b0ba51bf9108b5b282d34cede2ac73d6d83573 /connectivity
parent67688d3118b1a361d5dbdaa78e918815c163d75c (diff)
Forgot to extend queryInterface
...in 8b533d84f3ae211fdfafc2adc8d8567f366771d4 "Missing XTypeProvider base class." Change-Id: I477e47f2a383caab225f55ea1c46094946971b86
Diffstat (limited to 'connectivity')
-rw-r--r--connectivity/source/commontools/paramwrapper.cxx17
1 files changed, 16 insertions, 1 deletions
diff --git a/connectivity/source/commontools/paramwrapper.cxx b/connectivity/source/commontools/paramwrapper.cxx
index 9c4af0eb8b46..60c3ef8ef0e5 100644
--- a/connectivity/source/commontools/paramwrapper.cxx
+++ b/connectivity/source/commontools/paramwrapper.cxx
@@ -98,7 +98,22 @@ namespace param
}
- IMPLEMENT_FORWARD_XINTERFACE2( ParameterWrapper, UnoBase, PropertyBase )
+ IMPLEMENT_FORWARD_REFCOUNT( ParameterWrapper, UnoBase )
+
+ css::uno::Any ParameterWrapper::queryInterface(css::uno::Type const & aType)
+ throw (css::uno::RuntimeException, std::exception)
+ {
+ css::uno::Any a(UnoBase::queryInterface(aType));
+ if (!a.hasValue()) {
+ a = PropertyBase::queryInterface(aType);
+ if (!a.hasValue()
+ && aType == cppu::UnoType<css::lang::XTypeProvider>::get())
+ {
+ a <<= css::uno::Reference<css::lang::XTypeProvider>(this);
+ }
+ }
+ return a;
+ }
Sequence< Type > SAL_CALL ParameterWrapper::getTypes( ) throw(RuntimeException, std::exception)