[PATCH 6/7] d3drm: Implement IDirect3DRMViewport*::Init.

Aaryaman Vasishta jem456.vasishta at gmail.com
Mon Jun 27 02:28:21 CDT 2016


On Monday, June 27, 2016, Stefan Dösinger <stefandoesinger at gmail.com> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
>
> Am 2016-06-24 um 22:49 schrieb Aaryaman Vasishta:
> > +    if (FAILED(hr = IDirect3DRMDevice_QueryInterface(device,
> &IID_IDirect3DRMDevice3, (void **)&device3)))
> > +        return hr;
> > +
> > +    if (FAILED(hr = IDirect3DRMFrame_QueryInterface(camera,
> &IID_IDirect3DRMFrame3, (void **)&camera3)))
> > +    {
> > +        IDirect3DRMDevice3_Release(device3);
> > +        return hr;
> > +    }
> > +    IDirect3DRMDevice_Release(device);
> > +    IDirect3DRMFrame_Release(camera);
> > +
> > +    return d3drm_viewport2_Init(&viewport->IDirect3DRMViewport2_iface,
> device3, camera3, x, y, width, height);
> This has the same problem as the first version of your frame thunks: You
> get "device3", but then you release "device", to which you don't hold a
> reference.

Right, I should probably release device3 after calling d3drm_viewport2_init.

Cheers,
Aaryaman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20160627/1aa6558a/attachment.html>


More information about the wine-devel mailing list