From 1280e7e797c0106e6f01e2b3471b1ee3f10cbe18 Mon Sep 17 00:00:00 2001 From: Brandon Turner Date: Tue, 4 Oct 2005 13:45:19 +0000 Subject: [PATCH] Add errorlevel for set /A svn path=/trunk/; revision=18262 --- reactos/subsys/system/cmd/set.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/reactos/subsys/system/cmd/set.c b/reactos/subsys/system/cmd/set.c index b443e68d3eb..e3453602e65 100644 --- a/reactos/subsys/system/cmd/set.c +++ b/reactos/subsys/system/cmd/set.c @@ -69,7 +69,7 @@ INT cmd_set (LPTSTR cmd, LPTSTR param) /* remove escapes */ if ( param[0] ) for ( i = 0; param[i+1]; i++ ) { - if ( param[i] == '^' ) + if ( param[i] == _T('^') ) { memmove ( ¶m[i], ¶m[i+1], _tcslen(¶m[i]) * sizeof(TCHAR) ); } @@ -105,8 +105,14 @@ INT cmd_set (LPTSTR cmd, LPTSTR param) /* the /A does *NOT* have to be followed by a whitespace */ if ( !_tcsnicmp (param, _T("/A"), 2) ) { + BOOL Success = seta_eval ( skip_ws(param+2) ); + if(!Success) + { + /*might seem random but this is what windows xp does */ + nErrorLevel = 9165; + } /* TODO FIXME - what are we supposed to return? */ - return seta_eval ( skip_ws(param+2) ); + return Success; } p = _tcschr (param, _T('='));