-2005-09-30 Katsumi Yamaoka <yamaoka@jpl.org>
+2005-10-04 Reiner Steib <Reiner.Steib@gmx.de>
+
+ * 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 <yamaoka@jpl.org>
* time-date.el: Autoload parse-time-string, XEmacs needs it.
instead of mm-auto-save-coding-system for the draft or delayed
group.
-2002-10-28 Josh <huber@alum.wpi.edu>
+2002-10-28 Josh Huber <huber@alum.wpi.edu>
* mml.el (mml-mode-map): Fixed keybindings for mml-secure-*
functions.
(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)
;;; 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.
rhs ace address)
(when field
(dolist (rhs
- (message-remove-duplicates
+ (mm-delete-duplicates
(mapcar (lambda (rhs) (or (cadr (split-string rhs "@")) ""))
(mapcar 'downcase
(mapcar
'((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
;; 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.
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...