Module: wine Branch: refs/heads/master Commit: fd83de7129dfbf3a5360aa2db1716a4c4de4223a URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=fd83de7129dfbf3a5360aa2d... Author: Jason Green <jave27(a)gmail.com> Date: Fri Jun 16 16:13:01 2006 -0400 wined3d: Fix lookup for LOOP register. --- dlls/wined3d/baseshader.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c index e50eb35..004a0ef 100644 --- a/dlls/wined3d/baseshader.c +++ b/dlls/wined3d/baseshader.c @@ -363,6 +363,11 @@ void shader_get_registers_used( } else if (D3DSIO_DEF == curOpcode->opcode) { pToken += curOpcode->num_params; + /* If there's a loop in the shader */ + } else if (D3DSIO_LOOP == curOpcode->opcode) { + reg_maps->loop = 1; + pToken += curOpcode->num_params; + /* Set texture, address, temporary registers */ } else { int i, limit; @@ -411,9 +416,6 @@ void shader_get_registers_used( else if (D3DSPR_INPUT == regtype && !pshader) reg_maps->attributes[reg] = 1; - - else if (D3DSPR_LOOP == regtype) - reg_maps->loop = 1; } } }