[Bug 42508] start.exe does not detect its title argument when it should ( breaking .e.g URL opening in League of Legends)

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Mar 9 09:00:27 CST 2017


https://bugs.winehq.org/show_bug.cgi?id=42508

Bernhard Übelacker <bernhardu at mailbox.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bernhardu at mailbox.org

--- Comment #1 from Bernhard Übelacker <bernhardu at mailbox.org> ---
Came across this report because the launcher for "syngo fastView" triggers this
problem too.

It looks like the quotes get removed in kernel32/process.c, function
build_argv.

> As explained at the end of that bug report, if you escape your quotes in Wine's
> cmd start.exe parses the argument as the console title, i.e.:
> Z:\>start \"hello\" cmd

This does not yet work if it contains a space. But adding another pair
unescaped
quotation marks around would work again:
c:\>start "\"a b\"" wineconsole

> It should now be evident that start.exe should either become a wrapper
> around cmd.exe's built-in start function, invoking cmd and let cmd itself
> implement start.exe's actual behaviour, or implement GetCommandLine() based
> argument parsing similar to cmd.exe's within start.exe, leading to
> duplicated command-line parsing code. Both are not ideal solutions.

Therefore, just for completeness, there is probably a third way:
In cmd/builtins.c WCMD_start encode simple quotes to escaped quotes with
surrounding quotes.

But I don't know which way would be the best.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list