[PATCH 1/3] uiautomationcore: Implement UiaGetReservedNotSupportedValue.

Nikolay Sivov nsivov at codeweavers.com
Wed Oct 27 15:12:31 CDT 2021



On 10/27/21 10:55 PM, Connor McAdams wrote:
> +/*
> + * When passing the ReservedNotSupportedValue/ReservedMixedAttributeValue
> + * interface pointers across apartments within the same process, use the
> + * free threaded marshaler to preserve the pointer value. Wrap the IMarshal
> + * interface received by CoCreateFreeThreadedMarshaler so that we can maintain
> + * our own reference count and release the object when it hits 0.
> + */
> +static HRESULT uia_reserved_val_create_ftm(IUnknown *outer, IMarshal **marshaler)
I don't understand this part, if every QI for IMarshal returns new
instance, why do need a wrapper? And which object do you mean to
release, with our own reference count?



More information about the wine-devel mailing list