;; copying, restoring, etc.
;;
;; Todo:
+;; * When moving an article for expiry, copy all the marks except 'expire
+;; from the original article.
;; * Add a hook for when moving messages from new/ to cur/, to support
;; nnmail's duplicate detection.
;; * Improve generated Xrefs, so crossposts are detectable.
(defun nnmaildir--emlink-p (err)
(and (eq (car err) 'file-error)
- (string= (caddr err) "too many links")))
+ (string= (downcase (caddr err)) "too many links")))
(defun nnmaildir--enoent-p (err)
(and (eq (car err) 'file-error)
- (string= (caddr err) "no such file or directory")))
+ (string= (downcase (caddr err)) "no such file or directory")))
(defun nnmaildir--eexist-p (err)
(eq (car err) 'file-already-exists))
(not (string-equal target pgname))) ;; Move it.
(erase-buffer)
(nnheader-insert-file-contents nnmaildir--file)
- (gnus-request-accept-article target nil nil 'no-encode))
+ (let ((group-art (gnus-request-accept-article
+ target nil nil 'no-encode)))
+ (when (consp group-art)
+ ;; Maybe also copy: dormant forward reply save tick
+ ;; (gnus-add-mark? gnus-request-set-mark?)
+ (gnus-group-mark-article-read target (cdr group-art)))))
(if (equal target pgname)
;; Leave it here.
(setq didnt (cons (nnmaildir--art-num article) didnt))