summaryrefslogtreecommitdiff
path: root/dbaccess
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-12-04 15:30:40 +0100
committerStephan Bergmann <sbergman@redhat.com>2015-12-04 15:30:40 +0100
commit58a3f5697808ca1db0c99b25e6f4d9e43dec16ba (patch)
treeefd82260317ec09e3d2772d2f59b004c34db32ef /dbaccess
parenta027ed9573858f3ec6361577ff541d7f2495bd32 (diff)
UBSan: Bad static_cast from dbaccess::ODatabaseSource
...which doesn't inherit from cppu::OWeakObject in the first multiple- inheritance slot Change-Id: I1624e5c696d5a592f86e7c48849ecf3a39e1e6fb
Diffstat (limited to 'dbaccess')
-rw-r--r--dbaccess/source/core/dataaccess/datasource.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/dbaccess/source/core/dataaccess/datasource.cxx b/dbaccess/source/core/dataaccess/datasource.cxx
index 00e9d3fc551a..c3bbc792fb74 100644
--- a/dbaccess/source/core/dataaccess/datasource.cxx
+++ b/dbaccess/source/core/dataaccess/datasource.cxx
@@ -1327,8 +1327,10 @@ extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface* SAL_CALL
com_sun_star_comp_dba_ODatabaseSource(css::uno::XComponentContext* context,
css::uno::Sequence<css::uno::Any> const &)
{
- css::uno::Reference< XDatabaseContext > xDBContext( DatabaseContext::create(context) );
- return cppu::acquire(static_cast<OWeakObject*>(xDBContext->createInstance().get()));
+ css::uno::Reference<XInterface> inst(
+ DatabaseContext::create(context)->createInstance());
+ inst->acquire();
+ return inst.get();
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */