(file-name-as-directory
nnmail-procmail-directory)))
"\\([^/]*\\)"
- (regexp-quote nnmail-procmail-suffix) "$")
+ nnmail-procmail-suffix "$")
(expand-file-name file))
(let ((procmail-group (substring (expand-file-name file)
(match-beginning 1)
(goto-char (point-min))
(while (re-search-forward "\\(\r?\n[ \t]+\\)+" nil t)
(replace-match " " t t))
+ ;; Nuke pathologically long headers. Since Gnus applies
+ ;; pathologically complex regexps to the buffer, lines
+ ;; that are looong will take longer than the Universe's
+ ;; existence to process.
+ (goto-char (point-min))
+ (while (not (eobp))
+ (end-of-line)
+ (if (> (current-column) 1024)
+ (gnus-delete-line)
+ (forward-line 1)))
;; Allow washing.
+ (goto-char (point-min))
(run-hooks 'nnmail-split-hook)
(if (and (symbolp nnmail-split-methods)
(fboundp nnmail-split-methods))
"Error in `nnmail-split-methods'; using `bogus' mail group")
(sit-for 1)
'("bogus")))))
- (setq split (remove-duplicates split :test 'equal))
+ (setq split (gnus-remove-duplicates split))
;; The article may be "cross-posted" to `junk'. What
;; to do? Just remove the `junk' spec. Don't really
;; see anything else to do...
(let ((history nnmail-split-history)
prev)
(while history
- (setcar history (delete-if (lambda (e) (string= (car e) group))
- (car history)))
+ (setcar history (gnus-delete-if (lambda (e) (string= (car e) group))
+ (car history)))
(pop history))
(setq nnmail-split-history (delq nil nnmail-split-history))))