Henri Verbeet : wined3d: Simply pass an IWineD3DSurfaceImpl pointer to surface_set_texture_name().

Alexandre Julliard julliard at winehq.org
Tue Apr 27 16:59:31 CDT 2010


Module: wine
Branch: master
Commit: 294d9dae8f8de26c00d38d4a2e457fe47dc7e4f4
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=294d9dae8f8de26c00d38d4a2e457fe47dc7e4f4

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Mon Apr 26 21:33:02 2010 +0200

wined3d: Simply pass an IWineD3DSurfaceImpl pointer to surface_set_texture_name().

---

 dlls/wined3d/cubetexture.c     |   14 +++++++-------
 dlls/wined3d/surface.c         |   17 ++++++++---------
 dlls/wined3d/texture.c         |   14 +++++++-------
 dlls/wined3d/wined3d_private.h |    2 +-
 4 files changed, 23 insertions(+), 24 deletions(-)

diff --git a/dlls/wined3d/cubetexture.c b/dlls/wined3d/cubetexture.c
index e2865b2..44f6196 100644
--- a/dlls/wined3d/cubetexture.c
+++ b/dlls/wined3d/cubetexture.c
@@ -118,7 +118,7 @@ static void cubetexture_cleanup(IWineD3DCubeTextureImpl *This)
 
     for (i = 0; i < sub_count; ++i)
     {
-        IWineD3DSurface *surface = (IWineD3DSurface *)This->baseTexture.sub_resources[i];
+        IWineD3DSurfaceImpl *surface = (IWineD3DSurfaceImpl *)This->baseTexture.sub_resources[i];
 
         if (surface)
         {
@@ -126,9 +126,9 @@ static void cubetexture_cleanup(IWineD3DCubeTextureImpl *This)
              * surface doesn't try and release it. */
             surface_set_texture_name(surface, 0, TRUE);
             surface_set_texture_name(surface, 0, FALSE);
-            surface_set_texture_target(surface, 0);
-            IWineD3DSurface_SetContainer(surface, NULL);
-            IWineD3DSurface_Release(surface);
+            surface_set_texture_target((IWineD3DSurface *)surface, 0);
+            IWineD3DSurface_SetContainer((IWineD3DSurface *)surface, NULL);
+            IWineD3DSurface_Release((IWineD3DSurface *)surface);
         }
     }
     basetexture_cleanup((IWineD3DBaseTexture *)This);
@@ -216,9 +216,9 @@ static void WINAPI IWineD3DCubeTextureImpl_UnLoad(IWineD3DCubeTexture *iface)
 
     for (i = 0; i < sub_count; ++i)
     {
-        IWineD3DSurface *surface = (IWineD3DSurface *)This->baseTexture.sub_resources[i];
+        IWineD3DSurfaceImpl *surface = (IWineD3DSurfaceImpl *)This->baseTexture.sub_resources[i];
 
-        IWineD3DSurface_UnLoad(surface);
+        IWineD3DSurface_UnLoad((IWineD3DSurface *)surface);
         surface_set_texture_name(surface, 0, TRUE);
         surface_set_texture_name(surface, 0, FALSE);
     }
@@ -287,7 +287,7 @@ static HRESULT WINAPI IWineD3DCubeTextureImpl_BindTexture(IWineD3DCubeTexture *i
 
         for (i = 0; i < sub_count; ++i)
         {
-            IWineD3DSurface *surface = (IWineD3DSurface *)This->baseTexture.sub_resources[i];
+            IWineD3DSurfaceImpl *surface = (IWineD3DSurfaceImpl *)This->baseTexture.sub_resources[i];
 
             if (This->baseTexture.is_srgb)
                 surface_set_texture_name(surface, This->baseTexture.texture_srgb.name, TRUE);
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index bba6ad9..efe5030 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -468,36 +468,35 @@ static void surface_force_reload(IWineD3DSurfaceImpl *surface)
     surface->Flags &= ~(SFLAG_ALLOCATED | SFLAG_SRGBALLOCATED);
 }
 
-void surface_set_texture_name(IWineD3DSurface *iface, GLuint new_name, BOOL srgb)
+void surface_set_texture_name(IWineD3DSurfaceImpl *surface, GLuint new_name, BOOL srgb)
 {
-    IWineD3DSurfaceImpl *This = (IWineD3DSurfaceImpl *)iface;
     GLuint *name;
     DWORD flag;
 
+    TRACE("surface %p, new_name %u, srgb %#x.\n", surface, new_name, srgb);
+
     if(srgb)
     {
-        name = &This->texture_name_srgb;
+        name = &surface->texture_name_srgb;
         flag = SFLAG_INSRGBTEX;
     }
     else
     {
-        name = &This->texture_name;
+        name = &surface->texture_name;
         flag = SFLAG_INTEXTURE;
     }
 
-    TRACE("(%p) : setting texture name %u\n", This, new_name);
-
     if (!*name && new_name)
     {
         /* FIXME: We shouldn't need to remove SFLAG_INTEXTURE if the
          * surface has no texture name yet. See if we can get rid of this. */
-        if (This->Flags & flag)
+        if (surface->Flags & flag)
             ERR("Surface has SFLAG_INTEXTURE set, but no texture name\n");
-        IWineD3DSurface_ModifyLocation(iface, flag, FALSE);
+        IWineD3DSurface_ModifyLocation((IWineD3DSurface *)surface, flag, FALSE);
     }
 
     *name = new_name;
-    surface_force_reload(This);
+    surface_force_reload(surface);
 }
 
 void surface_set_texture_target(IWineD3DSurface *iface, GLenum target)
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
index bcbcfa9..35d5e61 100644
--- a/dlls/wined3d/texture.c
+++ b/dlls/wined3d/texture.c
@@ -111,16 +111,16 @@ static void texture_cleanup(IWineD3DTextureImpl *This)
 
     for (i = 0; i < This->baseTexture.level_count; ++i)
     {
-        IWineD3DSurface *surface = (IWineD3DSurface *)This->baseTexture.sub_resources[i];
+        IWineD3DSurfaceImpl *surface = (IWineD3DSurfaceImpl *)This->baseTexture.sub_resources[i];
         if (surface)
         {
             /* Clean out the texture name we gave to the surface so that the
              * surface doesn't try and release it */
             surface_set_texture_name(surface, 0, TRUE);
             surface_set_texture_name(surface, 0, FALSE);
-            surface_set_texture_target(surface, 0);
-            IWineD3DSurface_SetContainer(surface, NULL);
-            IWineD3DSurface_Release(surface);
+            surface_set_texture_target((IWineD3DSurface *)surface, 0);
+            IWineD3DSurface_SetContainer((IWineD3DSurface *)surface, NULL);
+            IWineD3DSurface_Release((IWineD3DSurface *)surface);
         }
     }
 
@@ -208,8 +208,8 @@ static void WINAPI IWineD3DTextureImpl_UnLoad(IWineD3DTexture *iface) {
      */
     for (i = 0; i < This->baseTexture.level_count; ++i)
     {
-        IWineD3DSurface *surface = (IWineD3DSurface *)This->baseTexture.sub_resources[i];
-        IWineD3DSurface_UnLoad(surface);
+        IWineD3DSurfaceImpl *surface = (IWineD3DSurfaceImpl *)This->baseTexture.sub_resources[i];
+        IWineD3DSurface_UnLoad((IWineD3DSurface *)surface);
         surface_set_texture_name(surface, 0, FALSE); /* Delete rgb name */
         surface_set_texture_name(surface, 0, TRUE); /* delete srgb name */
     }
@@ -282,7 +282,7 @@ static HRESULT WINAPI IWineD3DTextureImpl_BindTexture(IWineD3DTexture *iface, BO
 
         for (i = 0; i < This->baseTexture.level_count; ++i)
         {
-            IWineD3DSurface *surface = (IWineD3DSurface *)This->baseTexture.sub_resources[i];
+            IWineD3DSurfaceImpl *surface = (IWineD3DSurfaceImpl *)This->baseTexture.sub_resources[i];
             surface_set_texture_name(surface, gl_tex->name, This->baseTexture.is_srgb);
         }
 
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index 27bc6aa..6ada851 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -2680,7 +2680,7 @@ void surface_load_ds_location(IWineD3DSurfaceImpl *surface,
 void surface_modify_ds_location(IWineD3DSurfaceImpl *surface, DWORD location) DECLSPEC_HIDDEN;
 void surface_set_compatible_renderbuffer(IWineD3DSurfaceImpl *surface,
         unsigned int width, unsigned int height) DECLSPEC_HIDDEN;
-void surface_set_texture_name(IWineD3DSurface *iface, GLuint name, BOOL srgb_name) DECLSPEC_HIDDEN;
+void surface_set_texture_name(IWineD3DSurfaceImpl *surface, GLuint name, BOOL srgb_name) DECLSPEC_HIDDEN;
 void surface_set_texture_target(IWineD3DSurface *iface, GLenum target) DECLSPEC_HIDDEN;
 
 BOOL getColorBits(const struct wined3d_format_desc *format_desc,




More information about the wine-cvs mailing list