[v2 4/6] d3dx9: Reference effect pool implementation in d3dx9_base_effect structure.

Matteo Bruni matteo.mystral at gmail.com
Tue Apr 25 10:24:23 CDT 2017

2017-04-24 13:36 GMT+02:00 Paul Gofman <gofmanp at gmail.com>:

>  /*** IUnknown methods ***/
> -static HRESULT WINAPI ID3DXEffectPoolImpl_QueryInterface(ID3DXEffectPool *iface, REFIID riid, void **object)
> +static HRESULT WINAPI d3dx_effect_pool_QueryInterface(ID3DXEffectPool *iface, REFIID riid, void **object)
>  {
>      TRACE("(%p)->(%s, %p)\n", iface, debugstr_guid(riid), object);

Please update / cleanup this TRACE too.

> -static ULONG WINAPI ID3DXEffectPoolImpl_AddRef(ID3DXEffectPool *iface)
> +static ULONG WINAPI d3dx_effect_pool_AddRef(ID3DXEffectPool *iface)
>  {
> -    struct ID3DXEffectPoolImpl *This = impl_from_ID3DXEffectPool(iface);
> +    struct d3dx_effect_pool *pool = impl_from_ID3DXEffectPool(iface);
> -    TRACE("(%p)->(): AddRef from %u\n", This, This->ref);
> +    TRACE("iface %p, pool %p, ref %u.\n", iface, pool, pool->ref);

Tracing both iface and pool doesn't seem useful and I don't think I've
ever seen it anywhere else. Also for AddRef() we usually go with a
TRACE in the form:

TRACE("%p increasing refcount to %u.\n", iface, refcount);

Similarly for Release(). Have a look at recent implementations of the
IUnknown functions like e.g. d3d11_hull_shader_* in

More information about the wine-devel mailing list