From: Spencer Wallace <spencerwallace@esri.com> --- programs/cmd/tests/test_cmdline.cmd | 23 +++++++++++++++++++++++ programs/cmd/tests/test_cmdline.cmd.exp | 8 ++++++++ 2 files changed, 31 insertions(+) diff --git a/programs/cmd/tests/test_cmdline.cmd b/programs/cmd/tests/test_cmdline.cmd index 8f3143d0700..1c657b2ef2f 100644 --- a/programs/cmd/tests/test_cmdline.cmd +++ b/programs/cmd/tests/test_cmdline.cmd @@ -52,6 +52,29 @@ echo No prompts or I would not get here1 rem - Try cmd.exe /k as well cmd.exe /k "copy file1 file2 >nul && exit" echo No prompts or I would not get here2 + +echo --- Test 19 +rem test cmd.exe /c with absolute path to executable containing a space, exceeding MAX_PATH +cmd.exe /c "Z:\foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoo bar.bat" >nul 2>nul +echo errorlevel: %ERRORLEVEL% + +echo --- Test 20 +rem test cmd.exe /c with relative path to executable containing a space, exceeding MAX_PATH +cmd.exe /c "foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoo bar.bat" >nul 2>nul +echo errorlevel: %ERRORLEVEL% + +echo --- Test 21 +rem test cmd.exe /c with absolute path including long directory + executable containing a space, exceeding MAX_PATH +rem crashes, returns 0xc0000005 +rem cmd.exe /c "Z:\foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobar\foo bar.bat" >nul 2>nul +echo errorlevel: %ERRORLEVEL% + +echo --- Test 22 +rem test cmd.exe /c with relative path including long directory + executable containing a space, exceeding MAX_PATH +rem crashes, returns 0xc0000005 +rem cmd.exe /c "foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobar\foo bar.bat" >nul 2>nul +echo errorlevel: %ERRORLEVEL% + rem Directories are ignored when searching for executable files mkdir cmd.exe cmd.exe /c echo alabaster diff --git a/programs/cmd/tests/test_cmdline.cmd.exp b/programs/cmd/tests/test_cmdline.cmd.exp index cb9d306b487..a00041bd430 100644 --- a/programs/cmd/tests/test_cmdline.cmd.exp +++ b/programs/cmd/tests/test_cmdline.cmd.exp @@ -32,6 +32,14 @@ No whitespace --- Test 18 No prompts or I would not get here1 No prompts or I would not get here2 +--- Test 19 +errorlevel: 1 +--- Test 20 +errorlevel: 1 +--- Test 21 +errorlevel: 1 +--- Test 22 +errorlevel: 1 alabaster chrome %hello1% -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10629