diff --git a/programs/cmd/builtins.c b/programs/cmd/builtins.c index 5e405d580f0..7b8f76d49c5 100644 --- a/programs/cmd/builtins.c +++ b/programs/cmd/builtins.c @@ -2098,7 +2098,8 @@ void WCMD_setshow_default (const WCHAR *command) { NORM_IGNORECASE | SORT_STRINGSORT, command, 2, parmD, -1) == CSTR_EQUAL) { command += 2; - while (*command && *command==' ') command++; + while (*command && (*command==' ' || *command=='\t')) + command++; } GetCurrentDirectoryW(sizeof(cwd)/sizeof(WCHAR), cwd); @@ -2309,7 +2310,7 @@ void WCMD_setshow_env (WCHAR *s) { DWORD count; s += 2; - while (*s && *s==' ') s++; + while (*s && (*s==' ' || *s=='\t')) s++; if (*s=='\"') WCMD_opt_s_strip_quotes(s); @@ -2406,7 +2407,7 @@ void WCMD_setshow_prompt (void) { } else { s = param1; - while ((*s == '=') || (*s == ' ')) s++; + while ((*s == '=') || (*s == ' ') || (*s == '\t')) s++; if (strlenW(s) == 0) { SetEnvironmentVariableW(promptW, NULL); } diff --git a/programs/cmd/tests/test_builtins.cmd b/programs/cmd/tests/test_builtins.cmd index cc083d2845d..6cd8a48ff6a 100644 --- a/programs/cmd/tests/test_builtins.cmd +++ b/programs/cmd/tests/test_builtins.cmd @@ -325,6 +325,11 @@ cd cd ..\.. cd rd /Q/s foobar +mkdir foobar +cd /d@tab@foobar +cd +cd .. +rd /q/s foobar echo ------------ Testing type ------------ echo bar> foobaz @@ -465,6 +470,7 @@ rd /s/Q foobar echo ...for /L rem Some cases loop forever writing 0s, like e.g. (1,0,1), (1,a,3) or (a,b,c); those can't be tested here for /L %%i in (1,2,0) do echo %%i +for@tab@/L %%i in (1,2,0) do echo %%i for /L %%i in (1,2,6) do echo %%i for /l %%i in (1 ,2,6) do echo %%i for /L %%i in (a,2,3) do echo %%i diff --git a/programs/cmd/tests/test_builtins.cmd.exp b/programs/cmd/tests/test_builtins.cmd.exp index 535ef44e5a9..e6bf42142b4 100644 --- a/programs/cmd/tests/test_builtins.cmd.exp +++ b/programs/cmd/tests/test_builtins.cmd.exp @@ -247,6 +247,7 @@ Current dir: @pwd@\foobar@or_broken@Current dir:@space@ @pwd@\foobar\bar bak @pwd@\foobar\bar bak @pwd@ +@pwd@\foobar ------------ Testing type ------------ @pwd@>type foobaz@space@