[PATCH 2/4] wined3d: wined3d_device_set_transform() never fails.

Henri Verbeet hverbeet at codeweavers.com
Wed Sep 12 04:30:52 CDT 2012


---
 dlls/d3d8/device.c     |    5 ++---
 dlls/d3d9/device.c     |    5 ++---
 dlls/ddraw/device.c    |   21 ++++++++-------------
 dlls/ddraw/viewport.c  |    6 ++----
 dlls/wined3d/device.c  |   13 ++++++-------
 include/wine/wined3d.h |    2 +-
 6 files changed, 21 insertions(+), 31 deletions(-)

diff --git a/dlls/d3d8/device.c b/dlls/d3d8/device.c
index 25f7534..20c5fe3 100644
--- a/dlls/d3d8/device.c
+++ b/dlls/d3d8/device.c
@@ -1261,16 +1261,15 @@ static HRESULT WINAPI d3d8_device_SetTransform(IDirect3DDevice8 *iface,
         D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix)
 {
     struct d3d8_device *device = impl_from_IDirect3DDevice8(iface);
-    HRESULT hr;
 
     TRACE("iface %p, state %#x, matrix %p.\n", iface, state, matrix);
 
     /* Note: D3DMATRIX is compatible with struct wined3d_matrix. */
     wined3d_mutex_lock();
-    hr = wined3d_device_set_transform(device->wined3d_device, state, (const struct wined3d_matrix *)matrix);
+    wined3d_device_set_transform(device->wined3d_device, state, (const struct wined3d_matrix *)matrix);
     wined3d_mutex_unlock();
 
-    return hr;
+    return D3D_OK;
 }
 
 static HRESULT WINAPI d3d8_device_GetTransform(IDirect3DDevice8 *iface,
diff --git a/dlls/d3d9/device.c b/dlls/d3d9/device.c
index e10b698..0811ddc 100644
--- a/dlls/d3d9/device.c
+++ b/dlls/d3d9/device.c
@@ -1327,16 +1327,15 @@ static HRESULT WINAPI d3d9_device_SetTransform(IDirect3DDevice9Ex *iface,
         D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix)
 {
     struct d3d9_device *device = impl_from_IDirect3DDevice9Ex(iface);
-    HRESULT hr;
 
     TRACE("iface %p, state %#x, matrix %p.\n", iface, state, matrix);
 
     /* Note: D3DMATRIX is compatible with struct wined3d_matrix. */
     wined3d_mutex_lock();
-    hr = wined3d_device_set_transform(device->wined3d_device, state, (const struct wined3d_matrix *)matrix);
+    wined3d_device_set_transform(device->wined3d_device, state, (const struct wined3d_matrix *)matrix);
     wined3d_mutex_unlock();
 
-    return hr;
+    return D3D_OK;
 }
 
 static HRESULT WINAPI d3d9_device_GetTransform(IDirect3DDevice9Ex *iface,
diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c
index f51222b..813f4b3 100644
--- a/dlls/ddraw/device.c
+++ b/dlls/ddraw/device.c
@@ -3084,7 +3084,6 @@ static HRESULT d3d_device7_SetTransform(IDirect3DDevice7 *iface,
 {
     struct d3d_device *device = impl_from_IDirect3DDevice7(iface);
     enum wined3d_transform_state wined3d_state;
-    HRESULT hr;
 
     TRACE("iface %p, state %#x, matrix %p.\n", iface, state, matrix);
 
@@ -3111,10 +3110,10 @@ static HRESULT d3d_device7_SetTransform(IDirect3DDevice7 *iface,
 
     /* Note: D3DMATRIX is compatible with struct wined3d_matrix. */
     wined3d_mutex_lock();
-    hr = wined3d_device_set_transform(device->wined3d_device, wined3d_state, (struct wined3d_matrix *)matrix);
+    wined3d_device_set_transform(device->wined3d_device, wined3d_state, (struct wined3d_matrix *)matrix);
     wined3d_mutex_unlock();
 
-    return hr;
+    return D3D_OK;
 }
 
 static HRESULT WINAPI d3d_device7_SetTransform_FPUSetup(IDirect3DDevice7 *iface,
@@ -3149,17 +3148,15 @@ static HRESULT WINAPI d3d_device3_SetTransform(IDirect3DDevice3 *iface,
     if (state == D3DTRANSFORMSTATE_PROJECTION)
     {
         D3DMATRIX projection;
-        HRESULT hr;
 
         wined3d_mutex_lock();
         multiply_matrix(&projection, &device->legacy_clipspace, matrix);
-        hr = wined3d_device_set_transform(device->wined3d_device,
+        wined3d_device_set_transform(device->wined3d_device,
                 WINED3D_TS_PROJECTION, (struct wined3d_matrix *)&projection);
-        if (SUCCEEDED(hr))
-            device->legacy_projection = *matrix;
+        device->legacy_projection = *matrix;
         wined3d_mutex_unlock();
 
-        return hr;
+        return D3D_OK;
     }
 
     return IDirect3DDevice7_SetTransform(&device->IDirect3DDevice7_iface, state, matrix);
@@ -3363,18 +3360,16 @@ static HRESULT WINAPI d3d_device3_MultiplyTransform(IDirect3DDevice3 *iface,
     if (state == D3DTRANSFORMSTATE_PROJECTION)
     {
         D3DMATRIX projection, tmp;
-        HRESULT hr;
 
         wined3d_mutex_lock();
         multiply_matrix(&tmp, &device->legacy_projection, matrix);
         multiply_matrix(&projection, &device->legacy_clipspace, &tmp);
-        hr = wined3d_device_set_transform(device->wined3d_device,
+        wined3d_device_set_transform(device->wined3d_device,
                 WINED3D_TS_PROJECTION, (struct wined3d_matrix *)&projection);
-        if (SUCCEEDED(hr))
-            device->legacy_projection = tmp;
+        device->legacy_projection = tmp;
         wined3d_mutex_unlock();
 
-        return hr;
+        return D3D_OK;
     }
 
     return IDirect3DDevice7_MultiplyTransform(&device->IDirect3DDevice7_iface, state, matrix);
diff --git a/dlls/ddraw/viewport.c b/dlls/ddraw/viewport.c
index 6a4713a..f78ead0 100644
--- a/dlls/ddraw/viewport.c
+++ b/dlls/ddraw/viewport.c
@@ -41,13 +41,11 @@ static void update_clip_space(struct d3d_device *device,
         offset->x, offset->y, offset->z, 1.0f,
     };
     D3DMATRIX projection;
-    HRESULT hr;
 
     multiply_matrix(&projection, &clip_space, &device->legacy_projection);
-    hr = wined3d_device_set_transform(device->wined3d_device,
+    wined3d_device_set_transform(device->wined3d_device,
             WINED3D_TS_PROJECTION, (struct wined3d_matrix *)&projection);
-    if (SUCCEEDED(hr))
-        device->legacy_clipspace = clip_space;
+    device->legacy_clipspace = clip_space;
 }
 
 /*****************************************************************************
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 2cf3028..d3bf10d 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -1716,7 +1716,7 @@ HRESULT CDECL wined3d_device_get_stream_source_freq(const struct wined3d_device
     return WINED3D_OK;
 }
 
-HRESULT CDECL wined3d_device_set_transform(struct wined3d_device *device,
+void CDECL wined3d_device_set_transform(struct wined3d_device *device,
         enum wined3d_transform_state d3dts, const struct wined3d_matrix *matrix)
 {
     TRACE("device %p, state %s, matrix %p.\n",
@@ -1732,7 +1732,7 @@ HRESULT CDECL wined3d_device_set_transform(struct wined3d_device *device,
         TRACE("Recording... not performing anything.\n");
         device->updateStateBlock->changed.transform[d3dts >> 5] |= 1 << (d3dts & 0x1f);
         device->updateStateBlock->state.transforms[d3dts] = *matrix;
-        return WINED3D_OK;
+        return;
     }
 
     /* If the new matrix is the same as the current one,
@@ -1744,7 +1744,7 @@ HRESULT CDECL wined3d_device_set_transform(struct wined3d_device *device,
     if (!memcmp(&device->stateBlock->state.transforms[d3dts].u.m[0][0], matrix, sizeof(*matrix)))
     {
         TRACE("The application is setting the same matrix over again.\n");
-        return WINED3D_OK;
+        return;
     }
 
     device->stateBlock->state.transforms[d3dts] = *matrix;
@@ -1753,9 +1753,6 @@ HRESULT CDECL wined3d_device_set_transform(struct wined3d_device *device,
 
     if (d3dts < WINED3D_TS_WORLD_MATRIX(device->adapter->gl_info.limits.blends))
         device_invalidate_state(device, STATE_TRANSFORM(d3dts));
-
-    return WINED3D_OK;
-
 }
 
 HRESULT CDECL wined3d_device_get_transform(const struct wined3d_device *device,
@@ -1790,7 +1787,9 @@ HRESULT CDECL wined3d_device_multiply_transform(struct wined3d_device *device,
     multiply_matrix(&temp, mat, matrix);
 
     /* Apply change via set transform - will reapply to eg. lights this way. */
-    return wined3d_device_set_transform(device, state, &temp);
+    wined3d_device_set_transform(device, state, &temp);
+
+    return WINED3D_OK;
 }
 
 /* Note lights are real special cases. Although the device caps state only
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
index d581097..5d80f1d 100644
--- a/include/wine/wined3d.h
+++ b/include/wine/wined3d.h
@@ -2233,7 +2233,7 @@ HRESULT __cdecl wined3d_device_set_stream_source_freq(struct wined3d_device *dev
 HRESULT __cdecl wined3d_device_set_texture(struct wined3d_device *device, UINT stage, struct wined3d_texture *texture);
 HRESULT __cdecl wined3d_device_set_texture_stage_state(struct wined3d_device *device,
         UINT stage, enum wined3d_texture_stage_state state, DWORD value);
-HRESULT __cdecl wined3d_device_set_transform(struct wined3d_device *device,
+void __cdecl wined3d_device_set_transform(struct wined3d_device *device,
         enum wined3d_transform_state state, const struct wined3d_matrix *matrix);
 HRESULT __cdecl wined3d_device_set_vertex_declaration(struct wined3d_device *device,
         struct wined3d_vertex_declaration *declaration);
-- 
1.7.8.6




More information about the wine-patches mailing list