+2001-10-17 11:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * nnml.el (nnml-request-expire-articles): Make sure it is back to
+ the server.
+ * nnmbox.el (nnmbox-request-expire-articles): Ditto.
+ * nnfolder.el (nnfolder-request-expire-articles): Ditto.
+ * nnbabyl.el (nnbabyl-request-expire-articles): Ditto.
+ * nndiary.el (nndiary-request-expire-articles): Ditto.
+ (nndiary-schedule): Defsubst it before use it.
+ (nndiary-error): eval-and-compile.
+
2001-10-17 Per Abrahamsen <abraham@dina.kvl.dk>
* gnus-msg.el (gnus-post-method): Changed two instances of
(current-buffer))
(let ((nnml-current-directory nil))
(nnmail-expiry-target-group
- nnmail-expiry-target newsgroup))))
+ nnmail-expiry-target newsgroup)))
+ (nnbabyl-possibly-change-newsgroup newsgroup server))
(nnheader-message 5 "Deleting article %d in %s..."
(car articles) newsgroup)
(nnbabyl-delete-mail))
;; Compatibility Functions =================================================
-(if (fboundp 'signal-error)
+(eval-and-compile
+ (if (fboundp 'signal-error)
+ (defun nndiary-error (&rest args)
+ (apply #'signal-error 'nndiary args))
(defun nndiary-error (&rest args)
- (apply #'signal-error 'nndiary args))
- (defun nndiary-error (&rest args)
- (apply #'error args)))
+ (apply #'error args))))
;; Backend behavior customization ===========================================
(interactive)
(message "NNDiary version %s" nndiary-version))
-
(defvoo nndiary-nov-file-name ".overview")
(defvoo nndiary-current-directory nil)
;; the (relative) number of seconds ahead GMT.
)
+(defsubst nndiary-schedule ()
+ (let (head)
+ (condition-case arg
+ (mapcar
+ (lambda (elt)
+ (setq head (nth 0 elt))
+ (nndiary-parse-schedule (nth 0 elt) (nth 1 elt) (nth 2 elt)))
+ nndiary-headers)
+ (t
+ (nnheader-report 'nndiary "X-Diary-%s header parse error: %s."
+ head (cdr arg))
+ nil))
+ ))
;;; Interface functions =====================================================
(with-temp-buffer
(nndiary-request-article number group server (current-buffer))
(let ((nndiary-current-directory nil))
- (nnmail-expiry-target-group nnmail-expiry-target group))))
+ (nnmail-expiry-target-group nnmail-expiry-target group)))
+ (nndiary-possibly-change-directory group server))
(nnheader-message 5 "Deleting article %s in %s" number group)
(condition-case ()
(funcall nnmail-delete-file-function article)
(nndiary-parse-schedule-value (match-string 1) min-or-values max))
))
-(defsubst nndiary-schedule ()
- (let (head)
- (condition-case arg
- (mapcar
- (lambda (elt)
- (setq head (nth 0 elt))
- (nndiary-parse-schedule (nth 0 elt) (nth 1 elt) (nth 2 elt)))
- nndiary-headers)
- (t
- (nnheader-report 'nndiary "X-Diary-%s header parse error: %s."
- head (cdr arg))
- nil))
- ))
-
(defun nndiary-max (spec)
;; Returns the max of specification SPEC, or nil for permanent schedules.
(unless (null spec)
newsgroup server (current-buffer))
(let ((nnfolder-current-directory nil))
(nnmail-expiry-target-group
- nnmail-expiry-target newsgroup))))
+ nnmail-expiry-target newsgroup)))
+ (nnfolder-possibly-change-group newsgroup server))
(nnheader-message 5 "Deleting article %d in %s..."
(car maybe-expirable) newsgroup)
(nnfolder-delete-mail)
(current-buffer))
(let ((nnml-current-directory nil))
(nnmail-expiry-target-group
- nnmail-expiry-target newsgroup))))
+ nnmail-expiry-target newsgroup)))
+ (nnmbox-possibly-change-newsgroup newsgroup server))
(nnheader-message 5 "Deleting article %d in %s..."
(car articles) newsgroup)
(nnmbox-delete-mail))
(let (nnml-current-directory
nnml-current-group
nnml-article-file-alist)
- (nnmail-expiry-target-group nnmail-expiry-target group))))
+ (nnmail-expiry-target-group nnmail-expiry-target group)))
+ ;; Maybe directory is changed during nnmail-expiry-target-group.
+ (nnml-possibly-change-directory group server))
(nnheader-message 5 "Deleting article %s in %s"
number group)
(condition-case ()