d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetIndices().
This commit is contained in:
parent
e0212511fc
commit
c208d973f6
|
@ -2575,6 +2575,7 @@ static HRESULT WINAPI IDirect3DDevice9Impl_GetIndices(IDirect3DDevice9Ex *iface,
|
||||||
{
|
{
|
||||||
IDirect3DDevice9Impl *This = impl_from_IDirect3DDevice9Ex(iface);
|
IDirect3DDevice9Impl *This = impl_from_IDirect3DDevice9Ex(iface);
|
||||||
struct wined3d_buffer *retIndexData = NULL;
|
struct wined3d_buffer *retIndexData = NULL;
|
||||||
|
IDirect3DIndexBuffer9Impl *buffer_impl;
|
||||||
HRESULT hr;
|
HRESULT hr;
|
||||||
|
|
||||||
TRACE("iface %p, buffer %p.\n", iface, ppIndexData);
|
TRACE("iface %p, buffer %p.\n", iface, ppIndexData);
|
||||||
|
@ -2587,7 +2588,8 @@ static HRESULT WINAPI IDirect3DDevice9Impl_GetIndices(IDirect3DDevice9Ex *iface,
|
||||||
hr = wined3d_device_get_index_buffer(This->wined3d_device, &retIndexData);
|
hr = wined3d_device_get_index_buffer(This->wined3d_device, &retIndexData);
|
||||||
if (SUCCEEDED(hr) && retIndexData)
|
if (SUCCEEDED(hr) && retIndexData)
|
||||||
{
|
{
|
||||||
*ppIndexData = wined3d_buffer_get_parent(retIndexData);
|
buffer_impl = wined3d_buffer_get_parent(retIndexData);
|
||||||
|
*ppIndexData = &buffer_impl->IDirect3DIndexBuffer9_iface;
|
||||||
IDirect3DIndexBuffer9_AddRef(*ppIndexData);
|
IDirect3DIndexBuffer9_AddRef(*ppIndexData);
|
||||||
wined3d_buffer_decref(retIndexData);
|
wined3d_buffer_decref(retIndexData);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue