Message322802
Using double quote around the version argument will cause a failure.
Ex (failure): "py.exe" "-3" "test.py"
=> run_child: about to run '3" "...\python.exe" "test.py"'
=> ...\python.exe: can't open file '3 test.py': [Errno 22] Invalid argument
Removing the double quote give (success): "py.exe" -3 "test.py" => run_child: about to run '"...\python.exe" "test.py"'
This is mainly problematic when a library or a tool want to be simpler and simply add double quotes around every parameters. This is impossible to do with the python launcher.
The issue seems to come from the PC/launcher.c file. It is the following line in the function process (around line 1622): command += wcslen(p);
This line is suppose to skip the -3 in the command line so that the rest can be given to python as-is. The problem is that while command come from GetCommandLineW and thus contain quote, p come from __wargv and does not contain the double quote. Thus, the 2 characters "- are skipped instead of -3. |
|
Date |
User |
Action |
Args |
2018-07-31 17:40:34 | copelnug | set | recipients:
+ copelnug, paul.moore, tim.golden, eric.araujo, zach.ware, steve.dower, dstufft |
2018-07-31 17:40:34 | copelnug | set | messageid: <1533058834.14.0.56676864532.issue34297@psf.upfronthosting.co.za> |
2018-07-31 17:40:34 | copelnug | link | issue34297 messages |
2018-07-31 17:40:34 | copelnug | create | |
|