On 10/25/19 5:10 AM, Alistair Leslie-Hughes wrote:Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com> --- Remove IID_IClassFactory checksI see some DLLs do something like this *ppv = NULL; if (!IsEqualIID(iid, &IID_IUnknown) && !IsEqualIID(iid, &IID_IClassFactory)) return E_NOINTERFACE; The only test I could find for this is in propset_private_tests() in dlls/dsound/tests/propset.c . And that seems to confirm the E_NOINTERFACE return. I doubt this really matters in practice but I want to see if somebody else has an opinion on this.
We should check riid here, but it should be already implemented in class factory QueryInterface implementation. I'd suggest to simply replace AddRef call with QueryInterface call.
Thanks,
Jacek