Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/ole32/classmoniker.c | 12 ++++-------- dlls/ole32/tests/moniker.c | 8 ++------ 2 files changed, 6 insertions(+), 14 deletions(-)
diff --git a/dlls/ole32/classmoniker.c b/dlls/ole32/classmoniker.c index 07d55e2f94..86d954a9c9 100644 --- a/dlls/ole32/classmoniker.c +++ b/dlls/ole32/classmoniker.c @@ -60,24 +60,22 @@ static inline ClassMoniker *impl_from_IROTData(IROTData *iface) /******************************************************************************* * ClassMoniker_QueryInterface *******************************************************************************/ -static HRESULT WINAPI ClassMoniker_QueryInterface(IMoniker* iface,REFIID riid,void** ppvObject) +static HRESULT WINAPI ClassMoniker_QueryInterface(IMoniker *iface, REFIID riid, void **ppvObject) { ClassMoniker *This = impl_from_IMoniker(iface);
- TRACE("(%p,%s,%p)\n",This,debugstr_guid(riid),ppvObject); + TRACE("%p, %s, %p.\n", iface, debugstr_guid(riid), ppvObject);
- /* Perform a sanity check on the parameters.*/ if (!ppvObject) return E_POINTER;
- /* Initialize the return parameter */ *ppvObject = 0;
- /* Compare the riid with the interface IDs implemented by this object.*/ if (IsEqualIID(&IID_IUnknown, riid) || IsEqualIID(&IID_IPersist, riid) || IsEqualIID(&IID_IPersistStream, riid) || - IsEqualIID(&IID_IMoniker, riid)) + IsEqualIID(&IID_IMoniker, riid) || + IsEqualGUID(&CLSID_ClassMoniker, riid)) { *ppvObject = iface; } @@ -93,11 +91,9 @@ static HRESULT WINAPI ClassMoniker_QueryInterface(IMoniker* iface,REFIID riid,vo return IUnknown_QueryInterface(This->pMarshal, riid, ppvObject); }
- /* Check that we obtained an interface.*/ if (!*ppvObject) return E_NOINTERFACE;
- /* Query Interface always increases the reference count by one when it is successful */ IMoniker_AddRef(iface);
return S_OK; diff --git a/dlls/ole32/tests/moniker.c b/dlls/ole32/tests/moniker.c index 0e6eaff57b..e0a87e0701 100644 --- a/dlls/ole32/tests/moniker.c +++ b/dlls/ole32/tests/moniker.c @@ -1773,13 +1773,9 @@ static void test_class_moniker(void) ok_ole_success(hr, CreateClassMoniker);
hr = IMoniker_QueryInterface(moniker, &CLSID_ClassMoniker, (void **)&unknown); -todo_wine ok(hr == S_OK, "Unexpected hr %#x.\n", hr); - if (SUCCEEDED(hr)) - { - ok(unknown == (IUnknown *)moniker, "Unexpected interface.\n"); - IUnknown_Release(unknown); - } + ok(unknown == (IUnknown *)moniker, "Unexpected interface.\n"); + IUnknown_Release(unknown);
test_moniker("class moniker", moniker, expected_class_moniker_marshal_data, sizeof(expected_class_moniker_marshal_data),