fix debug output
remove my '!' code - don't know how I thought this was valid
restore part of code I removed previously that was breaking 'not' cases
that need to execute and the right half of the == was longer than then
left
Modified: trunk/reactos/subsys/system/cmd/if.c
_____
Modified: trunk/reactos/subsys/system/cmd/if.c
--- trunk/reactos/subsys/system/cmd/if.c 2005-09-21 01:23:44 UTC
(rev 17956)
+++ trunk/reactos/subsys/system/cmd/if.c 2005-09-21 01:25:58 UTC
(rev 17957)
@@ -43,7 +43,7 @@
LPTSTR pp;
#ifdef _DEBUG
- DebugPrintf (_T("cmd_if: (\'%S\', \'%S\')\n"), cmd, param);
+ DebugPrintf (_T("cmd_if: (\'%s\', \'%s\')\n"), cmd, param);
#endif
if (!_tcsncmp (param, _T("/?"), 2))
@@ -52,16 +52,9 @@
return 0;
}
- /* First check if param string begins with '!' or 'not' */
- if ( param[0] == _T('!') )
+ /* First check if param string begins with 'not' */
+ if (!_tcsnicmp (param, _T("not"), 3) && _istspace (*(param +
3)))
{
- x_flag = X_EXEC; /* Remember '!' */
- ++param; /* Step over '!' */
- while (_istspace (*param)) /* And subsequent spaces */
- param++;
- }
- else if (!_tcsnicmp (param, _T("not"), 3) && _istspace (*(param
+ 3)))
- {
x_flag = X_EXEC; /* Remember 'NOT' */
param += 3; /* Step over 'NOT' */
while (_istspace (*param)) /* And subsequent spaces */
@@ -190,7 +183,11 @@
pp += p1len;
if ( x_flag )
+ {
+ while (*pp && !_istspace (*pp)) /* Find first
space, */
+ pp++;
x_flag |= X_EMPTY;
+ }
}
if (x_flag & X_EMPTY)