+2015-02-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Allow killing shell buffer if process is dead. (Bug#19823)
+
+ * progmodes/python.el (python-shell-font-lock-kill-buffer): Don't
+ require a running process.
+ (python-shell-font-lock-post-command-hook): Fontify only if the
+ shell process is running.
+
2015-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
* hi-lock.el (hi-lock-unface-buffer): Don't call
(defun python-shell-font-lock-kill-buffer ()
"Kill the font-lock buffer safely."
- (python-shell-with-shell-buffer
- (when (and python-shell--font-lock-buffer
- (buffer-live-p python-shell--font-lock-buffer))
- (kill-buffer python-shell--font-lock-buffer)
- (when (derived-mode-p 'inferior-python-mode)
- (setq python-shell--font-lock-buffer nil)))))
+ (when (and python-shell--font-lock-buffer
+ (buffer-live-p python-shell--font-lock-buffer))
+ (kill-buffer python-shell--font-lock-buffer)
+ (when (derived-mode-p 'inferior-python-mode)
+ (setq python-shell--font-lock-buffer nil))))
(defmacro python-shell-font-lock-with-font-lock-buffer (&rest body)
"Execute the forms in BODY in the font-lock buffer.
(defun python-shell-font-lock-post-command-hook ()
"Fontifies current line in shell buffer."
(let ((prompt-end (cdr (python-util-comint-last-prompt))))
- (when (and prompt-end (> (point) prompt-end))
+ (when (and prompt-end (> (point) prompt-end)
+ (process-live-p (get-buffer-process (current-buffer))))
(let* ((input (buffer-substring-no-properties
prompt-end (point-max)))
(start-pos prompt-end)