Module: wine Branch: master Commit: a4477fea4ae9d893cffb9d9ee43c09622cb121c6 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a4477fea4ae9d893cffb9d9ee4...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Dec 1 20:50:47 2010 +0100
wined3d: Pass an IWineD3DDeviceImpl pointer to free_private().
---
dlls/wined3d/arb_program_shader.c | 13 +++++++------ dlls/wined3d/ati_fragment_shader.c | 10 +++++----- dlls/wined3d/device.c | 8 ++++---- dlls/wined3d/nvidia_texture_shader.c | 2 +- dlls/wined3d/state.c | 2 +- dlls/wined3d/wined3d_private.h | 2 +- 6 files changed, 19 insertions(+), 18 deletions(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index 196d901..6c28d7f 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -5501,15 +5501,16 @@ static void arbfp_free_ffpshader(struct wine_rb_entry *entry, void *context) }
/* Context activation is done by the caller. */ -static void arbfp_free(IWineD3DDevice *iface) { - IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *) iface; - struct shader_arb_priv *priv = This->fragment_priv; +static void arbfp_free(IWineD3DDeviceImpl *device) +{ + struct shader_arb_priv *priv = device->fragment_priv;
- wine_rb_destroy(&priv->fragment_shaders, arbfp_free_ffpshader, &This->adapter->gl_info); + wine_rb_destroy(&priv->fragment_shaders, arbfp_free_ffpshader, &device->adapter->gl_info); priv->use_arbfp_fixed_func = FALSE;
- if(This->shader_backend != &arb_program_shader_backend) { - HeapFree(GetProcessHeap(), 0, This->fragment_priv); + if (device->shader_backend != &arb_program_shader_backend) + { + HeapFree(GetProcessHeap(), 0, device->fragment_priv); } }
diff --git a/dlls/wined3d/ati_fragment_shader.c b/dlls/wined3d/ati_fragment_shader.c index 85903ee..0d17250 100644 --- a/dlls/wined3d/ati_fragment_shader.c +++ b/dlls/wined3d/ati_fragment_shader.c @@ -1149,14 +1149,14 @@ static void atifs_free_ffpshader(struct wine_rb_entry *entry, void *context) }
/* Context activation is done by the caller. */ -static void atifs_free(IWineD3DDevice *iface) { - IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *) iface; - struct atifs_private_data *priv = This->fragment_priv; +static void atifs_free(IWineD3DDeviceImpl *device) +{ + struct atifs_private_data *priv = device->fragment_priv;
- wine_rb_destroy(&priv->fragment_shaders, atifs_free_ffpshader, This); + wine_rb_destroy(&priv->fragment_shaders, atifs_free_ffpshader, device);
HeapFree(GetProcessHeap(), 0, priv); - This->fragment_priv = NULL; + device->fragment_priv = NULL; }
static BOOL atifs_color_fixup_supported(struct color_fixup_desc fixup) diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index 4a7f6dd..c9920e8 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -2053,7 +2053,7 @@ err_out: This->blitter->free_private(iface); } if (This->fragment_priv) { - This->frag_pipe->free_private(iface); + This->frag_pipe->free_private(This); } if (This->shader_priv) { This->shader_backend->shader_free_private(This); @@ -2186,7 +2186,7 @@ static HRESULT WINAPI IWineD3DDeviceImpl_Uninit3D(IWineD3DDevice *iface,
/* Destroy the shader backend. Note that this has to happen after all shaders are destroyed. */ This->blitter->free_private(iface); - This->frag_pipe->free_private(iface); + This->frag_pipe->free_private(This); This->shader_backend->shader_free_private(This);
/* Release the buffers (with sanity checks)*/ @@ -6200,7 +6200,7 @@ static void delete_opengl_contexts(IWineD3DDevice *iface, IWineD3DSwapChainImpl LEAVE_GL();
This->blitter->free_private(iface); - This->frag_pipe->free_private(iface); + This->frag_pipe->free_private(This); This->shader_backend->shader_free_private(This); destroy_dummy_textures(This, gl_info);
@@ -6263,7 +6263,7 @@ static HRESULT create_primary_opengl_context(IWineD3DDevice *iface, IWineD3DSwap if (FAILED(hr)) { ERR("Failed to allocate blitter private data, hr %#x.\n", hr); - This->frag_pipe->free_private(iface); + This->frag_pipe->free_private(This); This->shader_backend->shader_free_private(This); goto err; } diff --git a/dlls/wined3d/nvidia_texture_shader.c b/dlls/wined3d/nvidia_texture_shader.c index 8e52057..599039e 100644 --- a/dlls/wined3d/nvidia_texture_shader.c +++ b/dlls/wined3d/nvidia_texture_shader.c @@ -695,7 +695,7 @@ static void nvrc_fragment_get_caps(const struct wined3d_gl_info *gl_info, struct
static HRESULT nvrc_fragment_alloc(IWineD3DDeviceImpl *device) { return WINED3D_OK; } /* Context activation is done by the caller. */ -static void nvrc_fragment_free(IWineD3DDevice *iface) {} +static void nvrc_fragment_free(IWineD3DDeviceImpl *device) {}
/* Two fixed function pipeline implementations using GL_NV_register_combiners and * GL_NV_texture_shader. The nvts_fragment_pipeline assumes that both extensions diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index d4c2d11..77f3b98 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -5697,7 +5697,7 @@ static void ffp_fragment_get_caps(const struct wined3d_gl_info *gl_info, struct }
static HRESULT ffp_fragment_alloc(IWineD3DDeviceImpl *device) { return WINED3D_OK; } -static void ffp_fragment_free(IWineD3DDevice *iface) {} +static void ffp_fragment_free(IWineD3DDeviceImpl *device) {} static BOOL ffp_color_fixup_supported(struct color_fixup_desc fixup) { if (TRACE_ON(d3d)) diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 1a0500f..c10055f 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -1146,7 +1146,7 @@ struct fragment_pipeline void (*enable_extension)(BOOL enable); void (*get_caps)(const struct wined3d_gl_info *gl_info, struct fragment_caps *caps); HRESULT (*alloc_private)(IWineD3DDeviceImpl *device); - void (*free_private)(IWineD3DDevice *iface); + void (*free_private)(IWineD3DDeviceImpl *device); BOOL (*color_fixup_supported)(struct color_fixup_desc fixup); const struct StateEntryTemplate *states; BOOL ffp_proj_control;