summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2018-02-03 15:24:50 +0100
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2018-02-03 15:24:50 +0100
commitd89e35ee50ccd74530f1499d99e00009dd6c57ed (patch)
treeacb7030e0175aa1d02500364cdb161bf8a39d6f5
parent005ff5f5c27f1187df81a48db9f93b9e99e94d97 (diff)
parent52c059a10d869b1812267c6afbd14ca229bf1635 (diff)
downloadorg-mode-d89e35ee50ccd74530f1499d99e00009dd6c57ed.tar.gz
Merge branch 'maint'
-rw-r--r--lisp/org-feed.el23
1 files changed, 15 insertions, 8 deletions
diff --git a/lisp/org-feed.el b/lisp/org-feed.el
index 3a6daf8..480e68a 100644
--- a/lisp/org-feed.el
+++ b/lisp/org-feed.el
@@ -276,14 +276,21 @@ have been saved."
(defun org-feed-update-all ()
"Get inbox items from all feeds in `org-feed-alist'."
(interactive)
- (let ((nfeeds (length org-feed-alist))
- (nnew (apply '+ (mapcar 'org-feed-update org-feed-alist))))
- (message "%s from %d %s"
- (cond ((= nnew 0) "No new entries")
- ((= nnew 1) "1 new entry")
- (t (format "%d new entries" nnew)))
- nfeeds
- (if (= nfeeds 1) "feed" "feeds"))))
+ (let ((entries 0)
+ (errors 0)
+ (total-feeds (length org-feed-alist)))
+ (dolist (feed org-feed-alist)
+ (let ((items (ignore-errors (org-feed-update feed))))
+ (if items (cl-incf entries items)
+ (cl-incf errors))))
+ (message "%s from %d %s%s"
+ (pcase entries
+ (0 "No new entries")
+ (1 "1 new entry")
+ (_ (format "%d new entries" entries)))
+ total-feeds
+ (if (= total-feeds 1) "feed" "feeds")
+ (if (= 0 errors) "" (format " (unavailable feeds: %d)" errors)))))
;;;###autoload
(defun org-feed-update (feed &optional retrieve-only)