From: Kenichi Handa Date: Sun, 22 Jan 2006 12:24:02 +0000 (+0000) Subject: (make-subsidiary-coding-system): Reset X-Git-Tag: emacs-pretest-22.0.90~4636 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=3bfa5b1fcc59d2edf69c9fa8f79c2c07ac3d7a73;p=emacs.git (make-subsidiary-coding-system): Reset `coding-system-define-form' property of subsidiaries to nil. Avoid duplicated entry in coding-system-alist. (make-coding-system): Avoid duplicated entry in coding-system-alist. (define-coding-system-alias): Likewise. --- diff --git a/lisp/international/mule.el b/lisp/international/mule.el index b0320ce98d9..05c2b3aabc9 100644 --- a/lisp/international/mule.el +++ b/lisp/international/mule.el @@ -620,16 +620,16 @@ It exists just for backward compatibility, and the value is always nil.") (subsidiaries (vector (intern (format "%s-unix" coding-system)) (intern (format "%s-dos" coding-system)) (intern (format "%s-mac" coding-system)))) - (i 0) - temp) - (while (< i 3) - (put (aref subsidiaries i) 'coding-system coding-spec) - (put (aref subsidiaries i) 'eol-type i) - (add-to-coding-system-list (aref subsidiaries i)) - (setq coding-system-alist - (cons (list (symbol-name (aref subsidiaries i))) - coding-system-alist)) - (setq i (1+ i))) + elt) + (dotimes (i 3) + (setq elt (aref subsidiaries i)) + (put elt 'coding-system coding-spec) + (put elt 'eol-type i) + (put elt 'coding-system-define-form nil) + (add-to-coding-system-list elt) + (or (assoc (symbol-name elt) coding-system-alist) + (setq coding-system-alist + (cons (list (symbol-name elt)) coding-system-alist)))) subsidiaries)) (defun transform-make-coding-system-args (name type &optional doc-string props) @@ -1082,8 +1082,9 @@ a value of `safe-charsets' in PLIST." ;; At last, register CODING-SYSTEM in `coding-system-list' and ;; `coding-system-alist'. (add-to-coding-system-list coding-system) - (setq coding-system-alist (cons (list (symbol-name coding-system)) - coding-system-alist)) + (or (assoc (symbol-name coding-system) coding-system-alist) + (setq coding-system-alist (cons (list (symbol-name coding-system)) + coding-system-alist))) ;; For a coding system of cateogory iso-8-1 and iso-8-2, create ;; XXX-with-esc variants. @@ -1114,8 +1115,9 @@ a value of `safe-charsets' in PLIST." (put alias 'coding-system (coding-system-spec coding-system)) (put alias 'coding-system-define-form nil) (add-to-coding-system-list alias) - (setq coding-system-alist (cons (list (symbol-name alias)) - coding-system-alist)) + (or (assoc (symbol-name alias) coding-system-alist) + (setq coding-system-alist (cons (list (symbol-name alias)) + coding-system-alist))) (let ((eol-type (coding-system-eol-type coding-system))) (if (vectorp eol-type) (progn