]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix bad quoting of python-shell-interpreter
authorNoam Postavsky <npostavs@gmail.com>
Fri, 9 Dec 2016 05:14:48 +0000 (00:14 -0500)
committerNoam Postavsky <npostavs@gmail.com>
Fri, 9 Dec 2016 05:14:48 +0000 (00:14 -0500)
`python-shell-calculate-command' was using `shell-quote-argument' as if
it was generating a shell command, but its callers don't pass the result
to a shell, and they expect to parse it with `split-string-and-unquote'.
This caused problems depending on the flavor of shell quoting in
effect (Bug#25025).

* lisp/progmodes/python.el (python-shell-calculate-command): Use
`combine-and-quote-strings' to quote the interpreter, so that it can be
parsed by `python-shell-make-comint' successfully using
`split-string-and-unquote'.

lisp/progmodes/python.el

index af8b791a90ea5e366409b1f00144dcf4ef671658..37018122f3023f8b196373c873d859935fdb2d5b 100644 (file)
@@ -2379,7 +2379,9 @@ the `buffer-name'."
 (defun python-shell-calculate-command ()
   "Calculate the string used to execute the inferior Python process."
   (format "%s %s"
-          (shell-quote-argument python-shell-interpreter)
+          ;; `python-shell-make-comint' expects to be able to
+          ;; `split-string-and-unquote' the result of this function.
+          (combine-and-quote-strings (list python-shell-interpreter))
           python-shell-interpreter-args))
 
 (define-obsolete-function-alias