summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2003-05-24 20:16:33 +0000
committerAndreas Schwab <schwab@suse.de>2003-05-24 20:16:33 +0000
commit1c31b34341cab7441b33419ee9d02415b9b77e9d (patch)
tree43e797b81a54732f8055689135048332a1ec0da1
parentdca2b44a1d8e3d9c2460939e56527b7212f2cfb6 (diff)
downloademacs-1c31b34341cab7441b33419ee9d02415b9b77e9d.tar.gz
(insert-directory): Preserve CR in a file name.
-rw-r--r--lisp/files.el8
1 files changed, 7 insertions, 1 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 67b8b6adba3..26235275261 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -4304,6 +4304,7 @@ If WILDCARD, it also runs the shell specified by `shell-file-name'."
file-name-coding-system
default-file-name-coding-system
'undecided))
+ coding-no-eol
val pos)
(when (and enable-multibyte-characters
(not (memq (coding-system-base coding)
@@ -4314,6 +4315,8 @@ If WILDCARD, it also runs the shell specified by `shell-file-name'."
(setq coding (detect-coding-region beg (point) t)))
(if (not (eq (coding-system-base coding) 'undecided))
(save-restriction
+ (setq coding-no-eol
+ (coding-system-change-eol-conversion coding 'unix))
(narrow-to-region beg (point))
(goto-char (point-min))
(while (not (eobp))
@@ -4321,7 +4324,10 @@ If WILDCARD, it also runs the shell specified by `shell-file-name'."
val (get-text-property (point) 'dired-filename))
(goto-char (next-single-property-change
(point) 'dired-filename nil (point-max)))
- (decode-coding-region pos (point) coding)
+ ;; Force no eol conversion on a file name, so
+ ;; that CR is preserved.
+ (decode-coding-region pos (point)
+ (if val coding-no-eol coding))
(if val
(put-text-property pos (point)
'dired-filename t)))))))