From: "Gabriel Ivăncescu" Subject: Re: [PATCH 2/2] msscript.ocx: Supply the ServiceProvider in IScriptControl::Run. Message-Id: <6ba120ac-f33d-15aa-bdaa-282c6e9c0783@gmail.com> Date: Wed, 8 Apr 2020 18:19:18 +0300 In-Reply-To: References: <1858d6205c7165ae95c03ec365921b1327795dd0.1586350357.git.gabrielopcode@gmail.com> On 08/04/2020 16:31, Jacek Caban wrote: > Hi Gabriel, > > On 08.04.2020 14:52, Gabriel Ivăncescu wrote: >> Signed-off-by: Gabriel Ivăncescu >> --- >> >> Even though it's a stub for now, it's the reason Windows uses InvokeEx in >> the first place. >> >>   dlls/msscript.ocx/msscript.c       | 2 +- >>   dlls/msscript.ocx/tests/msscript.c | 1 + >>   2 files changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/dlls/msscript.ocx/msscript.c b/dlls/msscript.ocx/msscript.c >> index c4c6485..0086ec2 100644 >> --- a/dlls/msscript.ocx/msscript.c >> +++ b/dlls/msscript.ocx/msscript.c >> @@ -1105,7 +1105,7 @@ static HRESULT WINAPI >> ScriptControl_Run(IScriptControl *iface, BSTR procedure_na >>           else >>           { >>               hr = IDispatchEx_InvokeEx(dispex, dispid, >> LOCALE_USER_DEFAULT, >> -                                      DISPATCH_METHOD, &dp, res, >> NULL, NULL); >> +                                      DISPATCH_METHOD, &dp, res, >> NULL, &This->host->IServiceProvider_iface); >>               IDispatchEx_Release(dispex); >>           } >>       } >> diff --git a/dlls/msscript.ocx/tests/msscript.c >> b/dlls/msscript.ocx/tests/msscript.c >> index 22db28e..aa0cedc 100644 >> --- a/dlls/msscript.ocx/tests/msscript.c >> +++ b/dlls/msscript.ocx/tests/msscript.c >> @@ -329,6 +329,7 @@ static HRESULT WINAPI >> DispatchEx_InvokeEx(IDispatchEx *iface, DISPID id, LCID lc >>       ok(lcid == LOCALE_USER_DEFAULT, "unexpected lcid %u.\n", lcid); >>       ok(wFlags == DISPATCH_METHOD, "unexpected wFlags %u.\n", wFlags); >>       ok(id == 0xdeadbeef, "unexpected id %d.\n", id); >> +    ok(!!pspCaller, "unexpected NULL ServiceProvider.\n"); > > > It would be interesting to verify here that caller object is the same as > host object. > > > Thanks, > > Jacek > Hi Jacek, Interesting point. I added a quick test on Windows and apparently it's *not* the same object, so please ignore the patch as it is wrong. I guess it creates a separate object for it, but it's probably not worth to add it as a stub now. Thanks, Gabriel