Commit fde61d46 authored by Nikolay Sivov's avatar Nikolay Sivov Committed by Alexandre Julliard

ole32: Fix CreataDataCache() return value when requested riid is not IUnknown,…

ole32: Fix CreataDataCache() return value when requested riid is not IUnknown, for aggregation case. Signed-off-by: 's avatarNikolay Sivov <nsivov@codeweavers.com> Signed-off-by: 's avatarHuw Davies <huw@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 7863247e
...@@ -2464,7 +2464,7 @@ HRESULT WINAPI CreateDataCache( ...@@ -2464,7 +2464,7 @@ HRESULT WINAPI CreateDataCache(
* IUnknown pointer can be returned to the outside. * IUnknown pointer can be returned to the outside.
*/ */
if ( pUnkOuter && !IsEqualIID(&IID_IUnknown, riid) ) if ( pUnkOuter && !IsEqualIID(&IID_IUnknown, riid) )
return CLASS_E_NOAGGREGATION; return E_INVALIDARG;
/* /*
* Try to construct a new instance of the class. * Try to construct a new instance of the class.
......
...@@ -1598,7 +1598,6 @@ static void test_data_cache(void) ...@@ -1598,7 +1598,6 @@ static void test_data_cache(void)
/* requested is not IUnknown */ /* requested is not IUnknown */
hr = CreateDataCache(&unknown, &CLSID_NULL, &IID_IOleCache2, (void**)&pOleCache); hr = CreateDataCache(&unknown, &CLSID_NULL, &IID_IOleCache2, (void**)&pOleCache);
todo_wine
ok(hr == E_INVALIDARG, "got 0x%08x\n", hr); ok(hr == E_INVALIDARG, "got 0x%08x\n", hr);
hr = CreateDataCache(&unknown, &CLSID_NULL, &IID_IUnknown, (void**)&unk); hr = CreateDataCache(&unknown, &CLSID_NULL, &IID_IUnknown, (void**)&unk);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment