From 8753ddeed0c759c971e74b586cedd0b6ed6d738c Mon Sep 17 00:00:00 2001 From: Miles Bader Date: Tue, 4 Oct 2005 22:51:06 +0000 Subject: [PATCH] Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-574 Merge from gnus--rel--5.10 2005-10-04 Reiner Steib * lisp/gnus/mm-url.el (mm-url-predefined-programs): Add switches for curl. * lisp/gnus/gnus-util.el (gnus-remove-duplicates): Remove. * lisp/gnus/nnmail.el (nnmail-article-group): Use mm-delete-duplicates instead of gnus-remove-duplicates. * lisp/gnus/message.el (message-remove-duplicates): Remove. (message-idna-to-ascii-rhs-1): Use mm-delete-duplicates instead of message-remove-duplicates. * lisp/gnus/mm-util.el (mm-delete-duplicates): Use `delete-dups' if available, else use implementation from `delete-dups'. --- lisp/gnus/ChangeLog | 18 +++++++++++++++++- lisp/gnus/ChangeLog.2 | 2 +- lisp/gnus/gnus-util.el | 8 -------- lisp/gnus/message.el | 10 +--------- lisp/gnus/mm-url.el | 2 +- lisp/gnus/mm-util.el | 23 +++++++++++++++-------- lisp/gnus/nnmail.el | 2 +- 7 files changed, 36 insertions(+), 29 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 69bfd79b460..d013524a1c8 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,4 +1,20 @@ -2005-09-30 Katsumi Yamaoka +2005-10-04 Reiner Steib + + * mm-url.el (mm-url-predefined-programs): Add switches for curl. + + * gnus-util.el (gnus-remove-duplicates): Remove. + + * nnmail.el (nnmail-article-group): Use mm-delete-duplicates + instead of gnus-remove-duplicates. + + * message.el (message-remove-duplicates): Remove. + (message-idna-to-ascii-rhs-1): Use mm-delete-duplicates instead of + message-remove-duplicates. + + * mm-util.el (mm-delete-duplicates): Use `delete-dups' if + available, else use implementation from `delete-dups'. + +2005-10-02 Katsumi Yamaoka * time-date.el: Autoload parse-time-string, XEmacs needs it. diff --git a/lisp/gnus/ChangeLog.2 b/lisp/gnus/ChangeLog.2 index f39bf525db8..50b978e7e75 100644 --- a/lisp/gnus/ChangeLog.2 +++ b/lisp/gnus/ChangeLog.2 @@ -7390,7 +7390,7 @@ instead of mm-auto-save-coding-system for the draft or delayed group. -2002-10-28 Josh +2002-10-28 Josh Huber * mml.el (mml-mode-map): Fixed keybindings for mml-secure-* functions. diff --git a/lisp/gnus/gnus-util.el b/lisp/gnus/gnus-util.el index 5556a815d2a..f7fb279f20f 100644 --- a/lisp/gnus/gnus-util.el +++ b/lisp/gnus/gnus-util.el @@ -1037,14 +1037,6 @@ This function saves the current buffer." (set-buffer gnus-group-buffer) (eq major-mode 'gnus-group-mode)))) -(defun gnus-remove-duplicates (list) - (let (new) - (while list - (or (member (car list) new) - (setq new (cons (car list) new))) - (setq list (cdr list))) - (nreverse new))) - (defun gnus-remove-if (predicate list) "Return a copy of LIST with all items satisfying PREDICATE removed." (let (out) diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 95a6dbc3b6d..d64d8dbd2bf 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -2027,14 +2027,6 @@ With prefix-argument just set Follow-Up, don't cross-post." ;;; End of functions adopted from `message-utils.el'. -(defun message-remove-duplicates (list) - (let (new) - (while list - (or (member (car list) new) - (setq new (cons (car list) new))) - (setq list (cdr list))) - (nreverse new))) - (defun message-remove-header (header &optional is-regexp first reverse) "Remove HEADER in the narrowed buffer. If IS-REGEXP, HEADER is a regular expression. @@ -4963,7 +4955,7 @@ subscribed address (and not the additional To and Cc header contents)." rhs ace address) (when field (dolist (rhs - (message-remove-duplicates + (mm-delete-duplicates (mapcar (lambda (rhs) (or (cadr (split-string rhs "@")) "")) (mapcar 'downcase (mapcar diff --git a/lisp/gnus/mm-url.el b/lisp/gnus/mm-url.el index 4fd39e477f6..b24f9d4132a 100644 --- a/lisp/gnus/mm-url.el +++ b/lisp/gnus/mm-url.el @@ -64,7 +64,7 @@ '((wget "wget" "--user-agent=mm-url" "-q" "-O" "-") (w3m "w3m" "-dump_source") (lynx "lynx" "-source") - (curl "curl" "--silent"))) + (curl "curl" "--silent" "--user-agent mm-url" "--location"))) (defcustom mm-url-program (cond diff --git a/lisp/gnus/mm-util.el b/lisp/gnus/mm-util.el index 339bd0f746a..42ca8e232fd 100644 --- a/lisp/gnus/mm-util.el +++ b/lisp/gnus/mm-util.el @@ -568,14 +568,21 @@ If the charset is `composition', return the actual one." ;; This is for XEmacs. (mm-mule-charset-to-mime-charset charset))) -(defun mm-delete-duplicates (list) - "Simple substitute for CL `delete-duplicates', testing with `equal'." - (let (result head) - (while list - (setq head (car list)) - (setq list (delete head list)) - (setq result (cons head result))) - (nreverse result))) +(if (fboundp 'delete-dups) + (defalias 'mm-delete-duplicates 'delete-dups) + (defun mm-delete-duplicates (list) + "Destructively remove `equal' duplicates from LIST. +Store the result in LIST and return it. LIST must be a proper list. +Of several `equal' occurrences of an element in LIST, the first +one is kept. + +This is a compatibility function for Emacsen without `delete-dups'." + ;; Code from `subr.el' in Emacs 22: + (let ((tail list)) + (while tail + (setcdr tail (delete (car tail) (cdr tail))) + (setq tail (cdr tail)))) + list)) ;; Fixme: This is used in places when it should be testing the ;; default multibyteness. See mm-default-multibyte-p. diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el index 98563143243..ad913d441b7 100644 --- a/lisp/gnus/nnmail.el +++ b/lisp/gnus/nnmail.el @@ -1142,7 +1142,7 @@ FUNC will be called with the group name to determine the article number." 5 "Error in `nnmail-split-methods'; using `bogus' mail group") (sit-for 1) '("bogus"))))) - (setq split (gnus-remove-duplicates split)) + (setq split (mm-delete-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... -- 2.39.2