https://bugs.winehq.org/show_bug.cgi?id=43337
Bug ID: 43337 Summary: Conditional command with parentheses not working. Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: cmd Assignee: wine-bugs@winehq.org Reporter: distjubo@gmail.com Distribution: ---
If a conditional command contains parentheses, it fails to execute properly.
Example 1: Command: echo C:\Program Files (x86)\ Output: C:\Program Files (x86)\
Example 2: Command: if ""=="" echo C:\Program Files (x86)\
Example 2 fails to execute. On Windows, the output of Example 1 and Example 2 are identical, but wine complains about not having found the command "x86".
https://bugs.winehq.org/show_bug.cgi?id=43337
Jan Niklas Hasse jhasse@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jhasse@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=43337
Ben Lubar ben.lubar@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ben.lubar@gmail.com
--- Comment #1 from Ben Lubar ben.lubar@gmail.com --- Minimal code to reproduce: $ wine cmd /c 'if "x" == "x" set foo=a(b)c'
On cmd.exe in Windows, this sets the variable "foo" to "a(b)c".
On cmd.exe in Wine, this sets the variable "foo" to "a" and then runs the programs "b" and "c".
It happens on both of these versions I have easy access to:
$ wine-stable --version wine-3.0 (Ubuntu 3.0-1ubuntu1) $ wine-development --version wine-3.5 (Ubuntu 3.5-1)
https://bugs.winehq.org/show_bug.cgi?id=43337
--- Comment #2 from Ben Lubar ben.lubar@gmail.com --- This code looks relevant: https://source.winehq.org/git/wine.git/blob/4a6a7655e1cbc614f609ea53939e240f...
https://bugs.winehq.org/show_bug.cgi?id=43337
Aaron Simmons paleozogt@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |paleozogt@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=43337
--- Comment #3 from Aaron Simmons paleozogt@gmail.com --- I am also seeing this:
$ wine --version wine-3.0.2
$ wine cmd /c 'if "x" == "x" set foo=a(b)c' Can't recognize 'b' as an internal or external command, or batch script. Can't recognize 'c' as an internal or external command, or batch script.
https://bugs.winehq.org/show_bug.cgi?id=43337
Vijay Kamuju infyquest@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED CC| |infyquest@gmail.com Fixed by SHA1| |6c39db0ca01a93003d2fbf2581f | |c2c3fcb3266c8
--- Comment #4 from Vijay Kamuju infyquest@gmail.com --- This is now fixed as part of cmd rewrite - https://source.winehq.org/git/wine.git/commit/6c39db0ca01a93003d2fbf2581fc2c...
https://bugs.winehq.org/show_bug.cgi?id=43337
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 9.12.