-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Hi,
I'm sorry for the late review. I completely forgot about this patch (also in the private mail you sent me).
It looks good to me, except one issue noted below that I missed earlier.
Am 2015-05-23 um 13:22 schrieb Alistair Leslie-Hughes:
index 7e10136..bad84ef 100644 --- a/dlls/dpnet/address.c +++ b/dlls/dpnet/address.c @@ -405,9 +405,58 @@ static HRESULT WINAPI IDirectPlay8AddressImpl_GetComponentByIndex(IDirectPlay8Ad const DWORD dwComponentID, WCHAR *pwszName, DWORD *pdwNameLen, void *pvBuffer, DWORD *pdwBufferSize, DWORD *pdwDataType) {
- IDirectPlay8AddressImpl *This = impl_from_IDirectPlay8Address(iface);
- TRACE("(%p): stub\n", This);
- return DPN_OK;
- IDirectPlay8AddressImpl *This = impl_from_IDirectPlay8Address(iface);
- struct component *entry;
- int namesize;
- TRACE("(%p)->(%p %p %p %p)\n", This, pwszName, pvBuffer, pdwBufferSize, pdwDataType);
You're not tracing dwComponentID and pdwNameLen here. In particular dwComponentID seems important, as it is the thing that the method call retrieves.
- if(!pdwNameLen || !pdwBufferSize || !pdwDataType)
return DPNERR_INVALIDPOINTER;
- if(dwComponentID > This->comp_count)
return DPNERR_DOESNOTEXIST;
As I've noted in other patches it would be a good idea to write a WARN in error cases, especially in a COM method where +relay can't be used to check return values. You can also print the available and required size in case of DPNERR_BUFFERTOSMALL.