mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 22:33:00 +00:00
[CMD] IF: Some functionality is available only when extensions are enabled.
This functionality is: case insensitivity comparisons (/I); CMDEXTVERSION and DEFINED unary operators; EQU, NEQ, LSS, LEQ, GTR, GEQ generic string comparators.
This commit is contained in:
parent
80844dc185
commit
fedc68aea8
4 changed files with 48 additions and 19 deletions
|
@ -82,7 +82,7 @@ INT ExecuteIf(PARSED_COMMAND *Cmd)
|
|||
return 1;
|
||||
}
|
||||
|
||||
if (Cmd->If.Operator == IF_CMDEXTVERSION)
|
||||
if (bEnableExtensions && (Cmd->If.Operator == IF_CMDEXTVERSION))
|
||||
{
|
||||
/* IF CMDEXTVERSION n: check if Command Extensions version
|
||||
* is greater or equal to n */
|
||||
|
@ -93,9 +93,9 @@ INT ExecuteIf(PARSED_COMMAND *Cmd)
|
|||
cmd_free(Right);
|
||||
return 1;
|
||||
}
|
||||
result = (2 >= n);
|
||||
result = (CMDEXTVERSION >= n);
|
||||
}
|
||||
else if (Cmd->If.Operator == IF_DEFINED)
|
||||
else if (bEnableExtensions && (Cmd->If.Operator == IF_DEFINED))
|
||||
{
|
||||
/* IF DEFINED var: check if environment variable exists */
|
||||
result = (GetEnvVarOrSpecial(Right) != NULL);
|
||||
|
@ -167,7 +167,7 @@ INT ExecuteIf(PARSED_COMMAND *Cmd)
|
|||
/* IF str1 == str2 */
|
||||
result = (StringCmp(Left, Right) == 0);
|
||||
}
|
||||
else
|
||||
else if (bEnableExtensions)
|
||||
{
|
||||
result = GenericCmp(StringCmp, Left, Right);
|
||||
switch (Cmd->If.Operator)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue