Commit 7dd679eb authored by Lars Ingebrigtsen's avatar Lars Ingebrigtsen
Browse files

Add extra checks before expiring the URL cache

(url-cache-prune-cache): Check that the directory exists before
trying to delete it.
parent 1968bb1b
2012-02-06 Lars Ingebrigtsen <larsi@gnus.org>
* url-cache.el (url-cache-prune-cache): New function.
(url-cache-prune-cache): Check that the directory exists before
trying to delete it.
* url.el (url-retrieve-number-of-calls): New variable.
(url-retrieve-internal): Use it to expire the cache once in a
......
......@@ -216,24 +216,26 @@ considered \"expired\"."
(let ((current-time (current-time))
(total-files 0)
(deleted-files 0))
(dolist (file (directory-files (or directory url-cache-directory) t))
(unless (member (file-name-nondirectory file) '("." ".."))
(setq total-files (1+ total-files))
(cond
((file-directory-p file)
(when (url-cache-prune-cache file)
(setq deleted-files (1+ deleted-files))))
((time-less-p
(time-add
(nth 5 (file-attributes file))
(seconds-to-time url-cache-expire-time))
current-time)
(delete-file file)
(setq deleted-files (1+ deleted-files))))))
(if (< deleted-files total-files)
nil
(delete-directory directory)
t)))
(setq directory (or directory url-cache-directory))
(when (file-exists-p directory)
(dolist (file (directory-files directory t))
(unless (member (file-name-nondirectory file) '("." ".."))
(setq total-files (1+ total-files))
(cond
((file-directory-p file)
(when (url-cache-prune-cache file)
(setq deleted-files (1+ deleted-files))))
((time-less-p
(time-add
(nth 5 (file-attributes file))
(seconds-to-time url-cache-expire-time))
current-time)
(delete-file file)
(setq deleted-files (1+ deleted-files))))))
(if (< deleted-files total-files)
nil
(delete-directory directory)
t))))
(provide 'url-cache)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment