Module: wine Branch: master Commit: 3cd864bdf8a4565442a57a05a91b372ae0a4ca70 URL: http://source.winehq.org/git/wine.git/?a=commit;h=3cd864bdf8a4565442a57a05a9...
Author: Dan Kegel dank@kegel.com Date: Tue Aug 2 12:21:31 2011 -0700
cmd: mkdir: Set errorlevel on invalid argument.
---
programs/cmd/builtins.c | 1 + programs/cmd/tests/test_builtins.cmd | 8 ++++---- programs/cmd/tests/test_builtins.cmd.exp | 8 ++++---- 3 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/programs/cmd/builtins.c b/programs/cmd/builtins.c index 58050cf..7e5ceaf 100644 --- a/programs/cmd/builtins.c +++ b/programs/cmd/builtins.c @@ -537,6 +537,7 @@ void WCMD_create_dir (WCHAR *command) { if (!argN) break; if (!create_full_path(thisArg)) { WCMD_print_error (); + errorlevel = 1; } } } diff --git a/programs/cmd/tests/test_builtins.cmd b/programs/cmd/tests/test_builtins.cmd index be1eead..2cbff33 100644 --- a/programs/cmd/tests/test_builtins.cmd +++ b/programs/cmd/tests/test_builtins.cmd @@ -485,18 +485,18 @@ if exist foo (rmdir foo & echo dir created echo %ErrorLevel% rem Invalid chars mkdir ? -echo %ErrorLevel% +echo mkdir ? gives errorlevel %ErrorLevel% call :setError 0 mkdir ?\foo -echo %ErrorLevel% +echo mkdir ?\foo gives errorlevel %ErrorLevel% call :setError 0 mkdir foo? -echo %ErrorLevel% +echo mkdir foo? gives errorlevel %ErrorLevel% if exist foo (rmdir foo & echo ok, foo created ) else ( echo foo not created ) call :setError 0 mkdir foo\bar? -echo %ErrorLevel% +echo mkdir foo\bar? gives errorlevel %ErrorLevel% call :setError 0 if not exist foo ( echo bad, foo not created diff --git a/programs/cmd/tests/test_builtins.cmd.exp b/programs/cmd/tests/test_builtins.cmd.exp index 8db75a7..f64150d 100644 --- a/programs/cmd/tests/test_builtins.cmd.exp +++ b/programs/cmd/tests/test_builtins.cmd.exp @@ -277,11 +277,11 @@ del /q * succeeded on file2.dat 0 dir created 0 -@todo_wine@1 -@todo_wine@1 -@todo_wine@1 +mkdir ? gives errorlevel 1 +mkdir ?\foo gives errorlevel 1 +mkdir foo? gives errorlevel 1 @todo_wine@ok, foo created -@todo_wine@1 +mkdir foo\bar? gives errorlevel 1 @todo_wine@ok, foo\bar created foo created bar created