<div dir="ltr">I'm not really sure either, as I had followed the way other d3drm interfaces did it on wine. I'll re-send the patch with your suggestions.<div><br></div><div>Cheers,</div><div>Aaryaman</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 19, 2016 at 3:09 AM, Henri Verbeet <span dir="ltr"><<a href="mailto:hverbeet@gmail.com" target="_blank">hverbeet@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 18 January 2016 at 19:57, Aaryaman Vasishta<br>
<span class=""><<a href="mailto:jem456.vasishta@gmail.com">jem456.vasishta@gmail.com</a>> wrote:<br>
> -    if (IsEqualGUID(riid, &IID_IDirect3DRMTexture2)<br>
> -            || IsEqualGUID(riid, &IID_IDirect3DRMTexture)<br>
> +    if (IsEqualGUID(riid, &IID_IDirect3DRMTexture)<br>
> +            || IsEqualGUID(riid, &IID_IDirect3DRMVisual)<br>
> +            || IsEqualGUID(riid, &IID_IDirect3DRMObject)<br>
>              || IsEqualGUID(riid, &IID_IUnknown))<br>
>      {<br>
> +        *out = &texture->IDirect3DRMTexture_iface;<br>
</span>This isn't necessarily wrong, but it does seem weird. You return<br>
&texture->IDirect3DRMTexture_iface here for e.g. IUnknown, but the<br>
implementation then forwards to &texture->IDirect3DRMTexture3_iface.<br>
It seems more logical to return the IDirect3DRMTexture3 interface here<br>
directly.<br>
<br>
We also tend to check the "newest" IID first, in D3D code at least.<br>
I.e., IID_IDirect3DRMTexture3 before IID_IDirect3DRMTexture.<br>
<br>
<br>
</blockquote></div><br></div>