Commit 722e60ab authored by Henri Verbeet's avatar Henri Verbeet Committed by Alexandre Julliard

d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetVertexShader().

parent a495b7af
...@@ -2339,6 +2339,7 @@ static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShader(IDirect3DDevice9Ex *i ...@@ -2339,6 +2339,7 @@ static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShader(IDirect3DDevice9Ex *i
IDirect3DVertexShader9 **shader) IDirect3DVertexShader9 **shader)
{ {
IDirect3DDevice9Impl *This = impl_from_IDirect3DDevice9Ex(iface); IDirect3DDevice9Impl *This = impl_from_IDirect3DDevice9Ex(iface);
IDirect3DVertexShader9Impl *shader_impl;
struct wined3d_shader *wined3d_shader; struct wined3d_shader *wined3d_shader;
TRACE("iface %p, shader %p.\n", iface, shader); TRACE("iface %p, shader %p.\n", iface, shader);
...@@ -2347,7 +2348,8 @@ static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShader(IDirect3DDevice9Ex *i ...@@ -2347,7 +2348,8 @@ static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShader(IDirect3DDevice9Ex *i
wined3d_shader = wined3d_device_get_vertex_shader(This->wined3d_device); wined3d_shader = wined3d_device_get_vertex_shader(This->wined3d_device);
if (wined3d_shader) if (wined3d_shader)
{ {
*shader = wined3d_shader_get_parent(wined3d_shader); shader_impl = wined3d_shader_get_parent(wined3d_shader);
*shader = &shader_impl->IDirect3DVertexShader9_iface;
IDirect3DVertexShader9_AddRef(*shader); IDirect3DVertexShader9_AddRef(*shader);
wined3d_shader_decref(wined3d_shader); wined3d_shader_decref(wined3d_shader);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment