Module: wine Branch: master Commit: e63bd2ce21ba7b2f5fc254209e19124a07eb97fa URL: http://source.winehq.org/git/wine.git/?a=commit;h=e63bd2ce21ba7b2f5fc254209e...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Fri Apr 24 09:17:58 2009 +0200
wined3d: The first shader token should be the version token.
---
dlls/wined3d/baseshader.c | 13 ++++++------- 1 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/dlls/wined3d/baseshader.c b/dlls/wined3d/baseshader.c index 1cb5a12..a7c2a50 100644 --- a/dlls/wined3d/baseshader.c +++ b/dlls/wined3d/baseshader.c @@ -911,17 +911,16 @@ void shader_generate_main(IWineD3DBaseShader *iface, SHADER_BUFFER* buffer, ins.src = src_param; This->baseShader.parse_state.current_row = 0;
+ if (!shader_is_version_token(*pToken++)) + { + ERR("First token is not a version token, invalid shader.\n"); + return; + } + while (WINED3DPS_END() != *pToken) { DWORD opcode_token;
- /* Skip version token */ - if (shader_is_version_token(*pToken)) - { - ++pToken; - continue; - } - /* Skip comment tokens */ if (shader_is_comment(*pToken)) {