wined3d: Fix constant setting for the ARB backend.

Henri Verbeet hverbeet at codeweavers.com
Wed Dec 17 10:07:24 CST 2008


---
 dlls/wined3d/device.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 326c8ba..9342040 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -3639,6 +3639,8 @@ UINT count) {
     This->highest_dirty_vs_const = max(This->highest_dirty_vs_const, start+count+1);
 
     IWineD3DDeviceImpl_MarkStateDirty(This, STATE_VERTEXSHADERCONSTANT);
+    memset(This->updateStateBlock->changed.vertexShaderConstantsF + start, 1,
+            sizeof(*This->updateStateBlock->changed.vertexShaderConstantsF) * count);
 
     return WINED3D_OK;
 }
@@ -4072,6 +4074,8 @@ static HRESULT WINAPI IWineD3DDeviceImpl_SetPixelShaderConstantF_DirtyConst(
     This->highest_dirty_ps_const = max(This->highest_dirty_ps_const, start+count+1);
 
     IWineD3DDeviceImpl_MarkStateDirty(This, STATE_PIXELSHADERCONSTANT);
+    memset(This->updateStateBlock->changed.pixelShaderConstantsF + start, 1,
+            sizeof(*This->updateStateBlock->changed.pixelShaderConstantsF) * count);
 
     return WINED3D_OK;
 }
-- 
1.5.6.4



--------------070904020703060309060400--



More information about the wine-patches mailing list