Commit 8e54cad6 authored by Aaron Hill's avatar Aaron Hill Committed by Alexandre Julliard

cmd: Set errorlevel to 0 when 'call' is invoked with an empty string.

Previously, invoking 'call' with an empty string would leave errorlevel unchanged. Reset errorlevel to 0 to match the behavior of the Windows 'cmd.exe'. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49982Signed-off-by: 's avatarAaron Hill <aa1ronham@gmail.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 8a70e7eb
......@@ -3149,6 +3149,9 @@ echo %ErrorLevel% should be 7
if errorlevel 7 echo setting var worked too well, bad
call :setError 3
echo %ErrorLevel% should still be 7
rem Verify that (call ) sets errorlevel to 0
(call )
if errorlevel 1 echo errorlevel should have been 0
echo ------------ Testing GOTO ------------
if a==a goto dest1
......
......@@ -1053,6 +1053,11 @@ void WCMD_run_program (WCHAR *command, BOOL called)
firstParam = WCMD_parameter(command, 0, NULL, FALSE, TRUE);
if (!firstParam) return;
if (!firstParam[0]) {
errorlevel = 0;
return;
}
/* Calculate the search path and stem to search for */
if (wcspbrk (firstParam, delims) == NULL) { /* No explicit path given, search path */
static const WCHAR curDir[] = {'.',';','\0'};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment