aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Ingebrigtsen2012-02-14 19:43:21 +0100
committerLars Ingebrigtsen2012-02-14 19:43:21 +0100
commitf15bcb40f492d3b43a38447ba312fca35ce58ba2 (patch)
tree5c1035d0488716c0ff133ac3a7c9c3657d7b18d2
parent6546b134052e9377f87f47480bc731b5dc3a9c85 (diff)
downloademacs-f15bcb40f492d3b43a38447ba312fca35ce58ba2.tar.gz
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.
-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 @@
12012-02-14 Lars Ingebrigtsen <larsi@gnus.org>
2
3 * url-queue.el (url-queue-kill-job): Refactored out code.
4 (url-queue-remove-jobs-from-host): Use it to kill jobs that are in
5 flight.
6
12012-02-14 Teodor Zlatanov <tzz@lifelogs.com> 72012-02-14 Teodor Zlatanov <tzz@lifelogs.com>
2 8
3 * url-future.el: Minor doc update. 9 * 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."
127 host) 127 host)
128 (push job jobs))) 128 (push job jobs)))
129 (dolist (job jobs) 129 (dolist (job jobs)
130 (url-queue-kill-job job)
130 (setq url-queue (delq job url-queue))))) 131 (setq url-queue (delq job url-queue)))))
131 132
132(defun url-queue-start-retrieve (job) 133(defun url-queue-start-retrieve (job)
@@ -146,14 +147,17 @@ The variable `url-queue-timeout' sets a timeout."
146 url-queue-timeout)) 147 url-queue-timeout))
147 (push job dead-jobs))) 148 (push job dead-jobs)))
148 (dolist (job dead-jobs) 149 (dolist (job dead-jobs)
149 (when (bufferp (url-queue-buffer job)) 150 (url-queue-kill-job job)
150 (while (get-buffer-process (url-queue-buffer job))
151 (ignore-errors
152 (delete-process (get-buffer-process (url-queue-buffer job)))))
153 (ignore-errors
154 (kill-buffer (url-queue-buffer job))))
155 (setq url-queue (delq job url-queue))))) 151 (setq url-queue (delq job url-queue)))))
156 152
153(defun url-queue-kill-job (job)
154 (when (bufferp (url-queue-buffer job))
155 (while (get-buffer-process (url-queue-buffer job))
156 (ignore-errors
157 (delete-process (get-buffer-process (url-queue-buffer job)))))
158 (ignore-errors
159 (kill-buffer (url-queue-buffer job)))))
160
157(provide 'url-queue) 161(provide 'url-queue)
158 162
159;;; url-queue.el ends here 163;;; url-queue.el ends here