1
0
Fork 0
mirror of synced 2025-03-07 03:53:26 +01:00

cmd: Handle lines with just spaces in bracket blocks.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51599
This commit is contained in:
Bernhard Übelacker 2024-02-09 21:45:37 +01:00 committed by Alexandre Julliard
parent 1d479df4e8
commit d7edf3e651
3 changed files with 33 additions and 0 deletions

View file

@ -1029,6 +1029,32 @@ if not exist %windir% (
) else (
echo windir does exist
)
if 1 == 0 (
echo 1 == 0 should not be true
@space@
) else echo block containing a line with just space seems to work
if 1 == 0 (
echo 1 == 0 should not be true
@tab@
) else echo block containing a line with just tab seems to work
if 1 == 0 (
echo 1 == 0 should not be true
@space@@tab@
) else echo block containing a line with just space and tab seems to work
if 1 == 0 (
echo 1 == 0 should not be true
@tab@@space@
) else echo block containing a line with just tab and space seems to work
if 1 == 0 (
echo 1 == 0 should not be true
@space@
@space@
) else echo block containing two lines with just space seems to work
if 1 == 0 (
echo 1 == 0 should not be true
@tab@
@tab@
) else echo block containing two lines with just tab seems to work
echo --- case sensitivity with and without /i option
if bar==BAR echo if does not default to case sensitivity
if not bar==BAR echo if seems to default to case sensitivity

View file

@ -707,6 +707,12 @@ comparison operators surrounded by brackets seem to work
comparison operators surrounded by brackets seem to work
windir is defined
windir does exist
block containing a line with just space seems to work
block containing a line with just tab seems to work
block containing a line with just space and tab seems to work
block containing a line with just tab and space seems to work
block containing two lines with just space seems to work
block containing two lines with just tab seems to work
--- case sensitivity with and without /i option
if seems to default to case sensitivity
if /i seems to work

View file

@ -2326,6 +2326,7 @@ WCHAR *WCMD_ReadAndParseLine(const WCHAR *optionalcmd, CMD_LIST **output, HANDLE
} else break;
}
extraData = WCMD_skip_leading_spaces(extraData);
} while (*extraData == 0x00);
curPos = extraSpace;