Dan Kegel : cmd: mkdir: Set errorlevel on invalid argument.

Alexandre Julliard julliard at winehq.org
Wed Aug 3 12:48:14 CDT 2011


Module: wine
Branch: master
Commit: 3cd864bdf8a4565442a57a05a91b372ae0a4ca70
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=3cd864bdf8a4565442a57a05a91b372ae0a4ca70

Author: Dan Kegel <dank at 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
- at todo_wine@1
- at todo_wine@1
- at todo_wine@1
+mkdir ? gives errorlevel 1
+mkdir ?\foo gives errorlevel 1
+mkdir foo\? gives errorlevel 1
 @todo_wine at ok, foo created
- at todo_wine@1
+mkdir foo\bar\? gives errorlevel 1
 @todo_wine at ok, foo\bar created
 foo created
 bar created




More information about the wine-cvs mailing list