Module: wine Branch: master Commit: bcaf4fb43f780b307d21aefc6ad6a51903ec76ae URL: http://source.winehq.org/git/wine.git/?a=commit;h=bcaf4fb43f780b307d21aefc6a...
Author: Jason Edmeades jason.edmeades@googlemail.com Date: Tue Sep 11 21:43:05 2007 +0100
cmd.exe: Add suport for if 1==1 echo yes.
---
programs/cmd/builtins.c | 2 ++ programs/cmd/wcmdmain.c | 8 +++++++- 2 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/programs/cmd/builtins.c b/programs/cmd/builtins.c index 8fbf292..ee8f1b3 100644 --- a/programs/cmd/builtins.c +++ b/programs/cmd/builtins.c @@ -1160,6 +1160,8 @@ void WCMD_if (WCHAR *p, CMD_LIST **cmdList) { else { strcpyW (condition, param1); } + WINE_TRACE("Condition: %s\n", wine_dbgstr_w(condition)); + if (!lstrcmpiW (condition, errlvlW)) { if (errorlevel >= atoiW(WCMD_parameter (p, 1+negate, NULL))) test = 1; WCMD_parameter (p, 2+negate, &command); diff --git a/programs/cmd/wcmdmain.c b/programs/cmd/wcmdmain.c index b44b0ed..818710c 100644 --- a/programs/cmd/wcmdmain.c +++ b/programs/cmd/wcmdmain.c @@ -708,6 +708,8 @@ void WCMD_execute (WCHAR *command, } p = WCMD_strtrim_leading_spaces (&whichcmd[count]); WCMD_parse (p, quals, param1, param2); + WINE_TRACE("param1: %s, param2: %s\n", wine_dbgstr_w(param1), wine_dbgstr_w(param2)); + switch (i) {
case WCMD_ATTRIB: @@ -1313,11 +1315,15 @@ int p = 0; case '\0': return; default: - while ((*s != '\0') && (*s != ' ') && (*s != '\t')) { + while ((*s != '\0') && (*s != ' ') && (*s != '\t') + && (*s != '=') && (*s != ',') ) { if (p == 0) *p1++ = *s++; else if (p == 1) *p2++ = *s++; else s++; } + /* Skip concurrent parms */ + while ((*s == ' ') || (*s == '\t') || (*s == '=') || (*s == ',') ) s++; + if (p == 0) *p1 = '\0'; if (p == 1) *p2 = '\0'; p++;