summaryrefslogtreecommitdiff
path: root/lisp/url
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2012-02-14 19:43:21 +0100
committerLars Ingebrigtsen <larsi@gnus.org>2012-02-14 19:43:21 +0100
commitf15bcb40f492d3b43a38447ba312fca35ce58ba2 (patch)
tree5c1035d0488716c0ff133ac3a7c9c3657d7b18d2 /lisp/url
parent6546b134052e9377f87f47480bc731b5dc3a9c85 (diff)
downloademacs-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/ChangeLog6
-rw-r--r--lisp/url/url-queue.el16
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