diff options
author | Richard M. Stallman <rms@gnu.org> | 1997-03-22 03:55:49 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1997-03-22 03:55:49 +0000 |
commit | 941e78a72a98a0bf26f51689bf9a7b7d47319d83 (patch) | |
tree | 756bacf6e3d99fb0587d8351fbb79f5571e90736 /lisp/emacs-lisp | |
parent | 328a37ec312c1eadedae8210b9554d2e51353981 (diff) | |
download | emacs-941e78a72a98a0bf26f51689bf9a7b7d47319d83.tar.gz emacs-941e78a72a98a0bf26f51689bf9a7b7d47319d83.tar.bz2 emacs-941e78a72a98a0bf26f51689bf9a7b7d47319d83.zip |
(tq-process-buffer): Catch errors running tq-queue-head-fn.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r-- | lisp/emacs-lisp/tq.el | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/emacs-lisp/tq.el b/lisp/emacs-lisp/tq.el index 0de2c48e638..5b2fa3ca399 100644 --- a/lisp/emacs-lisp/tq.el +++ b/lisp/emacs-lisp/tq.el @@ -112,10 +112,13 @@ that's how we tell where the answer ends." (if (re-search-forward (tq-queue-head-regexp tq) nil t) (let ((answer (buffer-substring (point-min) (point)))) (delete-region (point-min) (point)) - (funcall (tq-queue-head-fn tq) - (tq-queue-head-closure tq) - answer) - (tq-queue-pop tq) + (unwind-protect + (condition-case nil + (funcall (tq-queue-head-fn tq) + (tq-queue-head-closure tq) + answer) + (error nil)) + (tq-queue-pop tq)) (tq-process-buffer tq)))))) (provide 'tq) |