[3/8] d3d8: Use D3DRESOURCETYPE -> WINED3DRESOURCETYPE enum conversion function instead of implicit conversion (clang)
Frédéric Delanoy
frederic.delanoy at gmail.com
Sun May 29 02:46:06 CDT 2011
No default label used in switch statements so the compiler warns about unhandled cases
---
dlls/d3d8/cubetexture.c | 4 ++--
dlls/d3d8/d3d8_private.h | 31 +++++++++++++++++++++++++++++++
dlls/d3d8/directx.c | 2 +-
dlls/d3d8/surface.c | 2 +-
dlls/d3d8/texture.c | 4 ++--
dlls/d3d8/volume.c | 2 +-
dlls/d3d8/volumetexture.c | 4 ++--
7 files changed, 40 insertions(+), 9 deletions(-)
diff --git a/dlls/d3d8/cubetexture.c b/dlls/d3d8/cubetexture.c
index 5c28eff..1e6f8a6 100644
--- a/dlls/d3d8/cubetexture.c
+++ b/dlls/d3d8/cubetexture.c
@@ -200,7 +200,7 @@ static D3DRESOURCETYPE WINAPI IDirect3DCubeTexture8Impl_GetType(IDirect3DCubeTex
TRACE("iface %p.\n", iface);
wined3d_mutex_lock();
- type = wined3d_texture_get_type(This->wined3d_texture);
+ type = d3dresourcetype_from_wined3dresourcetype(wined3d_texture_get_type(This->wined3d_texture));
wined3d_mutex_unlock();
return type;
@@ -268,7 +268,7 @@ static HRESULT WINAPI IDirect3DCubeTexture8Impl_GetLevelDesc(IDirect3DCubeTextur
wined3d_resource_get_desc(sub_resource, &wined3d_desc);
desc->Format = d3dformat_from_wined3dformat(wined3d_desc.format);
- desc->Type = wined3d_desc.resource_type;
+ desc->Type = d3dresourcetype_from_wined3dresourcetype(wined3d_desc.resource_type);
desc->Usage = wined3d_desc.usage;
desc->Pool = d3dpool_from_wined3dpool(wined3d_desc.pool);
desc->Size = wined3d_desc.size;
diff --git a/dlls/d3d8/d3d8_private.h b/dlls/d3d8/d3d8_private.h
index c9eba13..880da8b 100644
--- a/dlls/d3d8/d3d8_private.h
+++ b/dlls/d3d8/d3d8_private.h
@@ -559,6 +559,37 @@ static inline WINED3DMULTISAMPLE_TYPE wined3dmultisampletype_from_d3dmultisample
return (WINED3DMULTISAMPLE_TYPE) type;
}
+static inline D3DRESOURCETYPE d3dresourcetype_from_wined3dresourcetype(WINED3DRESOURCETYPE type)
+{
+ switch (type)
+ {
+ case WINED3DRTYPE_SURFACE: return D3DRTYPE_SURFACE;
+ case WINED3DRTYPE_VOLUME: return D3DRTYPE_VOLUME;
+ case WINED3DRTYPE_TEXTURE: return D3DRTYPE_TEXTURE;
+ case WINED3DRTYPE_VOLUMETEXTURE: return D3DRTYPE_VOLUMETEXTURE;
+ case WINED3DRTYPE_CUBETEXTURE: return D3DRTYPE_CUBETEXTURE;
+ case WINED3DRTYPE_BUFFER: return D3DRTYPE_VERTEXBUFFER;
+ case WINED3DRTYPE_FORCE_DWORD : return D3DRTYPE_FORCE_DWORD;
+ }
+ return (D3DRESOURCETYPE) type;
+}
+
+static inline WINED3DRESOURCETYPE wined3dresourcetype_from_d3dresourcetype(D3DRESOURCETYPE type)
+{
+ switch (type)
+ {
+ case D3DRTYPE_SURFACE: return WINED3DRTYPE_SURFACE;
+ case D3DRTYPE_VOLUME: return WINED3DRTYPE_VOLUME;
+ case D3DRTYPE_TEXTURE: return WINED3DRTYPE_TEXTURE;
+ case D3DRTYPE_VOLUMETEXTURE: return WINED3DRTYPE_VOLUMETEXTURE;
+ case D3DRTYPE_CUBETEXTURE: return WINED3DRTYPE_CUBETEXTURE;
+ case D3DRTYPE_VERTEXBUFFER: return WINED3DRTYPE_BUFFER;
+ case D3DRTYPE_INDEXBUFFER: return (WINED3DRESOURCETYPE) type;
+ case D3DRTYPE_FORCE_DWORD: return WINED3DRTYPE_FORCE_DWORD;
+ }
+ return (WINED3DRESOURCETYPE) type;
+}
+
void load_local_constants(const DWORD *d3d8_elements, struct wined3d_shader *wined3d_vertex_shader) DECLSPEC_HIDDEN;
size_t parse_token(const DWORD *pToken) DECLSPEC_HIDDEN;
diff --git a/dlls/d3d8/directx.c b/dlls/d3d8/directx.c
index faa9a70..bd86070 100644
--- a/dlls/d3d8/directx.c
+++ b/dlls/d3d8/directx.c
@@ -244,7 +244,7 @@ static HRESULT WINAPI IDirect3D8Impl_CheckDeviceFormat(LPDIRECT3D8 iface, UINT A
break;
default:
- WineD3DRType = RType;
+ WineD3DRType = wined3dresourcetype_from_d3dresourcetype(RType);
break;
}
diff --git a/dlls/d3d8/surface.c b/dlls/d3d8/surface.c
index 5dd0964..bb8092a 100644
--- a/dlls/d3d8/surface.c
+++ b/dlls/d3d8/surface.c
@@ -201,7 +201,7 @@ static HRESULT WINAPI IDirect3DSurface8Impl_GetDesc(IDirect3DSurface8 *iface, D3
wined3d_mutex_unlock();
desc->Format = d3dformat_from_wined3dformat(wined3d_desc.format);
- desc->Type = wined3d_desc.resource_type;
+ desc->Type = d3dresourcetype_from_wined3dresourcetype(wined3d_desc.resource_type);
desc->Usage = wined3d_desc.usage;
desc->Pool = d3dpool_from_wined3dpool(wined3d_desc.pool);
desc->Size = wined3d_desc.size;
diff --git a/dlls/d3d8/texture.c b/dlls/d3d8/texture.c
index e8dee7e..8fe6b77 100644
--- a/dlls/d3d8/texture.c
+++ b/dlls/d3d8/texture.c
@@ -198,7 +198,7 @@ static D3DRESOURCETYPE WINAPI IDirect3DTexture8Impl_GetType(IDirect3DTexture8 *i
TRACE("iface %p.\n", iface);
wined3d_mutex_lock();
- type = wined3d_texture_get_type(This->wined3d_texture);
+ type = d3dresourcetype_from_wined3dresourcetype(wined3d_texture_get_type(This->wined3d_texture));
wined3d_mutex_unlock();
return type;
@@ -265,7 +265,7 @@ static HRESULT WINAPI IDirect3DTexture8Impl_GetLevelDesc(IDirect3DTexture8 *ifac
wined3d_resource_get_desc(sub_resource, &wined3d_desc);
desc->Format = d3dformat_from_wined3dformat(wined3d_desc.format);
- desc->Type = wined3d_desc.resource_type;
+ desc->Type = d3dresourcetype_from_wined3dresourcetype(wined3d_desc.resource_type);
desc->Usage = wined3d_desc.usage;
desc->Pool = d3dpool_from_wined3dpool(wined3d_desc.pool);
desc->Size = wined3d_desc.size;
diff --git a/dlls/d3d8/volume.c b/dlls/d3d8/volume.c
index 76174f2..037dcee 100644
--- a/dlls/d3d8/volume.c
+++ b/dlls/d3d8/volume.c
@@ -200,7 +200,7 @@ static HRESULT WINAPI IDirect3DVolume8Impl_GetDesc(IDirect3DVolume8 *iface, D3DV
wined3d_mutex_unlock();
desc->Format = d3dformat_from_wined3dformat(wined3d_desc.format);
- desc->Type = wined3d_desc.resource_type;
+ desc->Type = d3dresourcetype_from_wined3dresourcetype(wined3d_desc.resource_type);
desc->Usage = wined3d_desc.usage;
desc->Pool = d3dpool_from_wined3dpool(wined3d_desc.pool);
desc->Size = wined3d_desc.size;
diff --git a/dlls/d3d8/volumetexture.c b/dlls/d3d8/volumetexture.c
index 4829cb3..139492f 100644
--- a/dlls/d3d8/volumetexture.c
+++ b/dlls/d3d8/volumetexture.c
@@ -198,7 +198,7 @@ static D3DRESOURCETYPE WINAPI IDirect3DVolumeTexture8Impl_GetType(IDirect3DVolum
TRACE("iface %p.\n", iface);
wined3d_mutex_lock();
- type = wined3d_texture_get_type(This->wined3d_texture);
+ type = d3dresourcetype_from_wined3dresourcetype(wined3d_texture_get_type(This->wined3d_texture));
wined3d_mutex_unlock();
return type;
@@ -265,7 +265,7 @@ static HRESULT WINAPI IDirect3DVolumeTexture8Impl_GetLevelDesc(IDirect3DVolumeTe
wined3d_resource_get_desc(sub_resource, &wined3d_desc);
desc->Format = d3dformat_from_wined3dformat(wined3d_desc.format);
- desc->Type = wined3d_desc.resource_type;
+ desc->Type = d3dresourcetype_from_wined3dresourcetype(wined3d_desc.resource_type);
desc->Usage = wined3d_desc.usage;
desc->Pool = d3dpool_from_wined3dpool(wined3d_desc.pool);
desc->Size = wined3d_desc.size;
--
1.7.5.3
More information about the wine-patches
mailing list