Henri Verbeet : wined3d: Pass an IWineD3DDeviceImpl pointer to free_private ().
Alexandre Julliard
julliard at winehq.org
Thu Dec 2 12:23:56 CST 2010
Module: wine
Branch: master
Commit: a4477fea4ae9d893cffb9d9ee43c09622cb121c6
URL: http://source.winehq.org/git/wine.git/?a=commit;h=a4477fea4ae9d893cffb9d9ee43c09622cb121c6
Author: Henri Verbeet <hverbeet at 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;
More information about the wine-cvs
mailing list