[PATCH v2 2/8] dllhost: Add ISurrogate stub implementation.

Dmitry Timoshkov dmitry at baikal.ru
Wed Feb 23 06:40:43 CST 2022


Huw Davies <huw at codeweavers.com> wrote:

> > +static struct surrogate surrogate = { { &Surrogate_Vtbl }, 0 };
> > +
> 
> In the next patch surrogate gets moved to be a local variable of wWinMain, so
> it might as well start off there.

Sure.

> >  int WINAPI wWinMain(HINSTANCE hinst, HINSTANCE previnst, LPWSTR cmdline, int showcmd)
> >  {
> >      HRESULT hr;
> > @@ -36,9 +105,20 @@ int WINAPI wWinMain(HINSTANCE hinst, HINSTANCE previnst, LPWSTR cmdline, int sho
> >      hr = CLSIDFromString(cmdline, &clsid);
> >      if (hr == S_OK)
> >      {
> > -        FIXME("hosting object %s is not implemented\n", wine_dbgstr_guid(&clsid));
> > +        CoRegisterSurrogate(&surrogate.ISurrogate_iface);
> 
> 
> CoRegisterSurrogate() is currently a stub.  Do we know what this
> is supposed to do?

I'd guess that the stored ISurrogate pointer is used from inside of
CoFreeUnusedLibraries() to call ISurrogate::FreeSurrogate(). This part
still needs to be investigated and implemented.

-- 
Dmitry.



More information about the wine-devel mailing list