diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2012-02-14 19:43:21 +0100 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2012-02-14 19:43:21 +0100 |
commit | f15bcb40f492d3b43a38447ba312fca35ce58ba2 (patch) | |
tree | 5c1035d0488716c0ff133ac3a7c9c3657d7b18d2 /lisp/url | |
parent | 6546b134052e9377f87f47480bc731b5dc3a9c85 (diff) | |
download | emacs-f15bcb40f492d3b43a38447ba312fca35ce58ba2.tar.gz emacs-f15bcb40f492d3b43a38447ba312fca35ce58ba2.tar.bz2 emacs-f15bcb40f492d3b43a38447ba312fca35ce58ba2.zip |
Kill jobs that we remove from the queue
* url-queue.el (url-queue-kill-job): Refactored out code.
(url-queue-remove-jobs-from-host): Use it to kill jobs that are in
flight.
Diffstat (limited to 'lisp/url')
-rw-r--r-- | lisp/url/ChangeLog | 6 | ||||
-rw-r--r-- | lisp/url/url-queue.el | 16 |
2 files changed, 16 insertions, 6 deletions
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog index fe930dd6dd8..8f3e3997869 100644 --- a/lisp/url/ChangeLog +++ b/lisp/url/ChangeLog @@ -1,3 +1,9 @@ +2012-02-14 Lars Ingebrigtsen <larsi@gnus.org> + + * url-queue.el (url-queue-kill-job): Refactored out code. + (url-queue-remove-jobs-from-host): Use it to kill jobs that are in + flight. + 2012-02-14 Teodor Zlatanov <tzz@lifelogs.com> * url-future.el: Minor doc update. diff --git a/lisp/url/url-queue.el b/lisp/url/url-queue.el index 9dfee485918..1fc33dd22f1 100644 --- a/lisp/url/url-queue.el +++ b/lisp/url/url-queue.el @@ -127,6 +127,7 @@ The variable `url-queue-timeout' sets a timeout." host) (push job jobs))) (dolist (job jobs) + (url-queue-kill-job job) (setq url-queue (delq job url-queue))))) (defun url-queue-start-retrieve (job) @@ -146,14 +147,17 @@ The variable `url-queue-timeout' sets a timeout." url-queue-timeout)) (push job dead-jobs))) (dolist (job dead-jobs) - (when (bufferp (url-queue-buffer job)) - (while (get-buffer-process (url-queue-buffer job)) - (ignore-errors - (delete-process (get-buffer-process (url-queue-buffer job))))) - (ignore-errors - (kill-buffer (url-queue-buffer job)))) + (url-queue-kill-job job) (setq url-queue (delq job url-queue))))) +(defun url-queue-kill-job (job) + (when (bufferp (url-queue-buffer job)) + (while (get-buffer-process (url-queue-buffer job)) + (ignore-errors + (delete-process (get-buffer-process (url-queue-buffer job))))) + (ignore-errors + (kill-buffer (url-queue-buffer job))))) + (provide 'url-queue) ;;; url-queue.el ends here |