diff options
Diffstat (limited to 'lisp/gnus/gnus-async.el')
-rw-r--r-- | lisp/gnus/gnus-async.el | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lisp/gnus/gnus-async.el b/lisp/gnus/gnus-async.el index a2ab54bea8..9bb28f3a05 100644 --- a/lisp/gnus/gnus-async.el +++ b/lisp/gnus/gnus-async.el @@ -316,7 +316,8 @@ that was fetched." (set-marker (caddr entry) nil)) (gnus-async-with-semaphore (setq gnus-async-article-alist - (delq entry gnus-async-article-alist)))) + (delq entry gnus-async-article-alist)) + (unintern (car entry) gnus-async-hashtb))) (defun gnus-async-prefetch-remove-group (group) "Remove all articles belonging to GROUP from the prefetch buffer." @@ -332,8 +333,8 @@ that was fetched." "Return the entry for ARTICLE in GROUP if it has been prefetched." (let ((entry (save-excursion (gnus-async-set-buffer) - (assq (intern (format "%s-%d" group article) - gnus-async-hashtb) + (assq (intern-soft (format "%s-%d" group article) + gnus-async-hashtb) gnus-async-article-alist)))) ;; Perhaps something has emptied the buffer? (if (and entry |