Mercurial > emacs
changeset 73249:f5aa4451cada
* international/mule-cmds.el (coding-system-change-eol-conversion):
Ensure the coding system is initialized before calling
coding-system-eol-type.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Thu, 05 Oct 2006 14:46:26 +0000 |
parents | 7e5dc6da708d |
children | cec4203a5097 |
files | lisp/ChangeLog lisp/international/mule-cmds.el |
diffstat | 2 files changed, 21 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Thu Oct 05 14:43:08 2006 +0000 +++ b/lisp/ChangeLog Thu Oct 05 14:46:26 2006 +0000 @@ -1,3 +1,9 @@ +2006-10-05 Chong Yidong <cyd@stupidchicken.com> + + * international/mule-cmds.el (coding-system-change-eol-conversion): + Ensure the coding system is initialized before calling + coding-system-eol-type. + 2006-10-04 Carsten Dominik <dominik@science.uva.nl> * textmodes/org.el (org-rm-props, org-activate-plain-links)
--- a/lisp/international/mule-cmds.el Thu Oct 05 14:43:08 2006 +0000 +++ b/lisp/international/mule-cmds.el Thu Oct 05 14:46:26 2006 +0000 @@ -216,19 +216,21 @@ ((eq eol-type 'dos) 1) ((eq eol-type 'mac) 2) (t eol-type)))) - (let ((orig-eol-type (coding-system-eol-type coding-system))) - (if (vectorp orig-eol-type) - (if (not eol-type) - coding-system - (aref orig-eol-type eol-type)) - (let ((base (coding-system-base coding-system))) - (if (not eol-type) - base - (if (= eol-type orig-eol-type) - coding-system - (setq orig-eol-type (coding-system-eol-type base)) - (if (vectorp orig-eol-type) - (aref orig-eol-type eol-type)))))))) + ;; We call `coding-system-base' before `coding-system-eol-type', + ;; because the coding-system may not be initialized until then. + (let* ((base (coding-system-base coding-system)) + (orig-eol-type (coding-system-eol-type coding-system))) + (cond ((vectorp orig-eol-type) + (if (not eol-type) + coding-system + (aref orig-eol-type eol-type))) + ((not eol-type) + base) + ((= eol-type orig-eol-type) + coding-system) + ((progn (setq orig-eol-type (coding-system-eol-type base)) + (vectorp orig-eol-type)) + (aref orig-eol-type eol-type))))) (defun coding-system-change-text-conversion (coding-system coding) "Return a coding system which differs from CODING-SYSTEM in text conversion.