start: Fix arg parsing for quoted paths ending with backslash.

When using the start command with a /d switch specifying a quoted path that ends with a backslash (e.g., start /d "c:\path\" app.exe), subsequent arguments were incorrectly concatenated into the path string due to parsing ambiguity.

The error I encountered was with start /d "c:\temp\" test.exe, which was parsed into the arguments /d and "c:\temp\" test.exe. The path and the executable were merged into a single argument as a new path, preventing the child process from launching. In my first patch, I attempted to identify and split this combined argument, but this caused test failures in kernel32. I then retested on Windows and found that Windows also parses it as /d and "c:\temp\" test.exe—Wine's parsing is consistent with Windows. However, start works correctly on Windows because it is a built-in command, whereas in Wine, start is an external executable, leading to different behavior.

Signed-off-by: YeshunYe yeyeshun@uniontech.com

Merge request reports

Loading