diff options
author | Karl Otness <karl@karlotness.com> | 2018-04-21 23:01:11 -0400 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2018-04-22 20:06:50 +0300 |
commit | d6e2c593180934926fa4cc5b58fdab82b20f5f14 (patch) | |
tree | fa91f17df79d95916ea2b34d7aadc1d8fd8e5fec /lisp/term.el | |
parent | 6cf83131e263fd66fb0ae224bf83b1909b66157d (diff) | |
download | emacs-d6e2c593180934926fa4cc5b58fdab82b20f5f14.tar.gz |
Fix pre- and post-command-hook errors in term.el
Before this patch, after the terminal process dies the command
hooks added in term-mode's char mode would produce errors.
This fix removes these hooks when the process dies.
* lisp/term.el (term-handle-exit): Remove pre-command-hook and
post-command-hook because the process is dead. (Bug#31236)
Copyright-paperwork-exempt: yes
Diffstat (limited to 'lisp/term.el')
-rw-r--r-- | lisp/term.el | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lisp/term.el b/lisp/term.el index 6860ea69342..75c27797838 100644 --- a/lisp/term.el +++ b/lisp/term.el @@ -1484,6 +1484,9 @@ The main purpose is to get rid of the local keymap." (let ((buffer-read-only nil) (omax (point-max)) (opoint (point))) + ;; Remove hooks to avoid errors due to dead process. + (remove-hook 'pre-command-hook #'term-set-goto-process-mark t) + (remove-hook 'post-command-hook #'term-goto-process-mark-maybe t) ;; Record where we put the message, so we can ignore it ;; later on. (goto-char omax) |