diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2020-09-13 01:02:00 +0200 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2020-09-13 01:02:00 +0200 |
commit | 854855ec68c595edcce1b2dc768b20a65e41d0af (patch) | |
tree | 768fd5252c4265b541189d85183e63e0ec4ccdd0 | |
parent | f7d8650187e4720ba6a889da30535e3cdc1249a9 (diff) | |
download | emacs-854855ec68c595edcce1b2dc768b20a65e41d0af.tar.gz |
Clean up eww error buffer
* lisp/net/eww.el (eww-retrieve): Clean up error buffer after exiting.
-rw-r--r-- | lisp/net/eww.el | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lisp/net/eww.el b/lisp/net/eww.el index bc23fb913f3..5fd44901936 100644 --- a/lisp/net/eww.el +++ b/lisp/net/eww.el @@ -362,20 +362,26 @@ killed after rendering." (if (null eww-retrieve-command) (url-retrieve url #'eww-render (list url nil (current-buffer))) - (let ((buffer (generate-new-buffer " *eww retrieve*"))) + (let ((buffer (generate-new-buffer " *eww retrieve*")) + (error-buffer (generate-new-buffer " *eww error*"))) (with-current-buffer buffer (set-buffer-multibyte nil) (make-process :name "*eww fetch*" :buffer (current-buffer) - :stderr (get-buffer-create " *eww error*") + :stderr error-buffer :command (append eww-retrieve-command (list url)) :sentinel (lambda (process _) (unless (process-live-p process) - (with-current-buffer buffer - (goto-char (point-min)) - (insert "Content-type: text/html; charset=utf-8\n\n") - (apply #'funcall callback nil cbargs))))))))) + (when (buffer-live-p error-buffer) + (when (get-buffer-process error-buffer) + (delete-process (get-buffer-process error-buffer) )) + (kill-buffer error-buffer)) + (when (buffer-live-p buffer) + (with-current-buffer buffer + (goto-char (point-min)) + (insert "Content-type: text/html; charset=utf-8\n\n") + (apply #'funcall callback nil cbargs)))))))))) (function-put 'eww 'browse-url-browser-kind 'internal) |