oledb32: Ignore IRunnableObject in IDataSourceLocator_QueryInterface.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
oldstable
Alistair Leslie-Hughes 2017-03-12 06:26:54 +00:00 committed by Alexandre Julliard
parent 3ca00ff857
commit d4e14aa014
2 changed files with 9 additions and 0 deletions

View File

@ -73,6 +73,11 @@ static HRESULT WINAPI dslocator_QueryInterface(IDataSourceLocator *iface, REFIID
{
*ppvoid = &This->IDataInitialize_iface;
}
else if (IsEqualIID(riid, &IID_IRunnableObject))
{
TRACE("IID_IRunnableObject returning NULL\n");
return E_NOINTERFACE;
}
if(*ppvoid)
{

View File

@ -859,6 +859,7 @@ static void test_dslocator(void)
if(SUCCEEDED(hr))
{
IDataInitialize *datainit, *datainit2;
IRunnableObject *runable;
COMPATIBLE_LONG hwnd = 0;
if (0) /* Crashes under Window 7 */
@ -898,6 +899,9 @@ static void test_dslocator(void)
ok(hr == S_OK, "got %08x\n", hr);
ok(datainit == datainit2, "Got %p, previous %p\n", datainit, datainit2);
hr = IDataSourceLocator_QueryInterface(dslocator, &IID_IRunnableObject, (void **)&runable);
ok(hr == E_NOINTERFACE, "got %08x\n", hr);
IDataInitialize_Release(datainit2);
IDataInitialize_Release(datainit);