From f3c805be67df81713bd7b6130d03dace50688a49 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Sun, 27 Oct 2013 12:27:45 +0400 Subject: [PATCH] wshom.ocx: Silence failure to query IDispatchEx from IWshShell3. --- dlls/wshom.ocx/shell.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/dlls/wshom.ocx/shell.c b/dlls/wshom.ocx/shell.c index bc6a8394b71..17d0306b005 100644 --- a/dlls/wshom.ocx/shell.c +++ b/dlls/wshom.ocx/shell.c @@ -21,6 +21,7 @@ #include "shellapi.h" #include "shlobj.h" +#include "dispex.h" #include "wine/debug.h" #include "wine/unicode.h" @@ -576,14 +577,21 @@ static HRESULT WINAPI WshShell3_QueryInterface(IWshShell3 *iface, REFIID riid, v { TRACE("(%s, %p)\n", debugstr_guid(riid), ppv); + *ppv = NULL; + if(IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_IDispatch) || IsEqualGUID(riid, &IID_IWshShell3)) { *ppv = iface; - }else { + } + else if (IsEqualGUID(riid, &IID_IDispatchEx)) + { + return E_NOINTERFACE; + } + else + { FIXME("Unknown iface %s\n", debugstr_guid(riid)); - *ppv = NULL; return E_NOINTERFACE; }