Ivan Gyurdiev : wined3d:
Only run parse_decl_usage on vshader INPUT registers.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon May 22 05:20:21 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: 438d88e1e83ce0ead842a29aee2fc4ffdde39461
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=438d88e1e83ce0ead842a29aee2fc4ffdde39461
Author: Ivan Gyurdiev <ivg2 at cornell.edu>
Date: Sun May 21 17:12:53 2006 -0400
wined3d: Only run parse_decl_usage on vshader INPUT registers.
---
dlls/wined3d/vertexshader.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/vertexshader.c b/dlls/wined3d/vertexshader.c
index 29a92d1..ff6d6ed 100644
--- a/dlls/wined3d/vertexshader.c
+++ b/dlls/wined3d/vertexshader.c
@@ -709,7 +709,7 @@ inline static void vshader_program_add_p
}
}
-static void parse_decl_usage(IWineD3DVertexShaderImpl *This, INT usage, INT arrayNo)
+static void vshader_parse_input_decl_usage(IWineD3DVertexShaderImpl *This, INT usage, INT arrayNo)
{
switch(usage & 0xFFFF) {
case D3DDECLUSAGE_POSITION:
@@ -1541,8 +1541,10 @@ HRESULT WINAPI IWineD3DVertexShaderImpl_
DWORD usage = *pToken;
DWORD param = *(pToken + 1);
+ DWORD regtype = shader_get_regtype(param);
- parse_decl_usage(This, usage, param & D3DSP_REGNUM_MASK);
+ if (regtype == D3DSPR_INPUT)
+ vshader_parse_input_decl_usage(This, usage, param & D3DSP_REGNUM_MASK);
shader_program_dump_decl_usage(usage, param);
shader_dump_ins_modifiers(param);
TRACE(" ");
More information about the wine-cvs
mailing list