summaryrefslogtreecommitdiff
path: root/lisp/gnus/nndiary.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/gnus/nndiary.el')
-rw-r--r--lisp/gnus/nndiary.el11
1 files changed, 9 insertions, 2 deletions
diff --git a/lisp/gnus/nndiary.el b/lisp/gnus/nndiary.el
index c7a75105c08..8728aab1def 100644
--- a/lisp/gnus/nndiary.el
+++ b/lisp/gnus/nndiary.el
@@ -339,8 +339,15 @@ all. This may very well take some time.")
;; for this header) or one list (specifying all the possible values for this
;; header). In the latter case, the list does NOT include the unspecified
;; spec (*).
+
;; For time zone values, we have symbolic time zone names associated with
;; the (relative) number of seconds ahead GMT.
+ ;; The list of time zone values is obsolescent, and new code should
+ ;; not rely on it. Many of the time zone abbreviations are wrong;
+ ;; in particular, all single-letter abbreviations other than "Z" have
+ ;; been wrong since Internet RFC 2822 (2001). However, the
+ ;; abbreviations have not been changed due to backward compatibility
+ ;; concerns.
)
(defsubst nndiary-schedule ()
@@ -1366,10 +1373,10 @@ all. This may very well take some time.")
(setq day (+ 7 day))))
;; Finally, if we have some days, they are valid
(when days
- (sort days #'>)
(throw 'found
(encode-time 0 minute hour
- (car days) month year time-zone)))
+ (apply #'max days)
+ month year time-zone)))
)))))
;; There's an upper limit, but we didn't find any last occurrence.
;; This means that the schedule is undecidable. This can happen if