From: Noam Postavsky Date: Tue, 15 Aug 2017 21:49:10 +0000 (-0400) Subject: Work around w32-python-2.x bug to fix prompt detection (Bug#21376) X-Git-Tag: emacs-26.0.90~392 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9714545675af046d730352eb03dc00e93b6f7d3c;p=emacs.git Work around w32-python-2.x bug to fix prompt detection (Bug#21376) * lisp/progmodes/python.el (python-shell-prompt-detect): Don't put carriage returns into the temporary file when running in unbuffered mode, the w32 build of python 2.7 chokes on them. --- diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 6f169123b95..e73b2a8488c 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -2245,7 +2245,11 @@ detection and just returns nil." ;; `condition-case' and displaying the error message to ;; the user in the no-prompts warning. (ignore-errors - (let ((code-file (python-shell--save-temp-file code))) + (let ((code-file + ;; Python 2.x on Windows does not handle + ;; carriage returns in unbuffered mode. + (let ((inhibit-eol-conversion (getenv "PYTHONUNBUFFERED"))) + (python-shell--save-temp-file code)))) ;; Use `process-file' as it is remote-host friendly. (process-file interpreter