<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 18, 2016 at 4:17 PM, 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"><span class="">On 17 April 2016 at 22:57, Aaryaman Vasishta <<a href="mailto:jem456.vasishta@gmail.com">jem456.vasishta@gmail.com</a>> wrote:<br>
> @@ -1054,10 +1058,50 @@ static ULONG WINAPI d3drm3_Release(IDirect3DRM3 *iface)<br>
>  static HRESULT WINAPI d3drm3_CreateObject(IDirect3DRM3 *iface,<br>
>          REFCLSID clsid, IUnknown *outer, REFIID iid, void **out)<br>
>  {<br>
> -    FIXME("iface %p, clsid %s, outer %p, iid %s, out %p stub!\n",<br>
> +    void *object_struct;<br>
</span>...<br>
<span class="">> +    if (IsEqualGUID(clsid, &CLSID_CDirect3DRMTexture))<br>
> +    {<br>
> +        if (FAILED(hr = d3drm_texture_create((struct d3drm_texture **)&object_struct)))<br>
> +        {<br>
> +            *out = NULL;<br>
> +            return hr;<br>
> +        }<br>
> +        object = (IUnknown *)&((struct d3drm_texture *)object_struct)->IDirect3DRMTexture3_iface;<br>
> +    }<br>
</span>Why do you need "object_struct"?<br></blockquote><div>I need it to store the object's address, from which the IUnknown interface is obtained which in turn is used to QI the required object using iid.</div><div><br></div><div>Am I missing something? Is there a better way? I suppose I could re-use object and keep it as a void * instead of IUnknown..</div><div><br></div><div>Cheers,</div><div>Aaryaman</div></div><br></div></div>