diff lisp/gnus/mm-util.el @ 71262:70b055c73c8c

Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 103-104) - Update from CVS Revision: emacs@sv.gnu.org/emacs--devo--0--patch-295
author Miles Bader <miles@gnu.org>
date Wed, 07 Jun 2006 16:39:16 +0000
parents 261c2dbe91d2
children e5faa9959a89 a8190f7e546e
line wrap: on
line diff
--- a/lisp/gnus/mm-util.el	Wed Jun 07 13:34:42 2006 +0000
+++ b/lisp/gnus/mm-util.el	Wed Jun 07 16:39:16 2006 +0000
@@ -364,14 +364,17 @@
     (iso-2022-jp-3 latin-jisx0201 japanese-jisx0208-1978 japanese-jisx0208
 		   japanese-jisx0213-1 japanese-jisx0213-2)
     (shift_jis latin-jisx0201 katakana-jisx0201 japanese-jisx0208)
-    ,(if (or (not (fboundp 'charsetp)) ;; non-Mule case
-	     (charsetp 'unicode-a)
-	     (not (mm-coding-system-p 'mule-utf-8)))
-	 '(utf-8 unicode-a unicode-b unicode-c unicode-d unicode-e)
-       ;; If we have utf-8 we're in Mule 5+.
-       (append '(utf-8)
-	       (delete 'ascii
-		       (coding-system-get 'mule-utf-8 'safe-charsets)))))
+    ,(cond ((fboundp 'unicode-precedence-list)
+	    (cons 'utf-8 (delq 'ascii (mapcar 'charset-name
+					      (unicode-precedence-list)))))
+	   ((or (not (fboundp 'charsetp)) ;; non-Mule case
+		(charsetp 'unicode-a)
+		(not (mm-coding-system-p 'mule-utf-8)))
+	    '(utf-8 unicode-a unicode-b unicode-c unicode-d unicode-e))
+	   (t ;; If we have utf-8 we're in Mule 5+.
+	    (append '(utf-8)
+		    (delete 'ascii
+			    (coding-system-get 'mule-utf-8 'safe-charsets))))))
   "Alist of MIME-charset/MULE-charsets.")
 
 (defun mm-enrich-utf-8-by-mule-ucs ()
@@ -379,10 +382,6 @@
 This function will run when the `un-define' module is loaded under
 XEmacs, and fill the `utf-8' entry in `mm-mime-mule-charset-alist'
 with Mule charsets.  It is completely useless for Emacs."
-  (unless (cdr (delete '(mm-enrich-utf-8-by-mule-ucs)
-		       (assoc "un-define" after-load-alist)))
-    (setq after-load-alist
-	  (delete '("un-define") after-load-alist)))
   (when (boundp 'unicode-basic-translation-charset-order-list)
     (condition-case nil
 	(let ((val (delq