From: Noam Postavsky Date: Fri, 9 Dec 2016 05:14:48 +0000 (-0500) Subject: Fix bad quoting of python-shell-interpreter X-Git-Tag: emacs-26.0.90~1147 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=8f611e5e2309ae3f7f1753f0d2f7a60ca6fc2657;p=emacs.git Fix bad quoting of python-shell-interpreter `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'. --- diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index af8b791a90e..37018122f30 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -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