GNU bug report logs -
#14287
24.3.50; Some *-dos coding systems remove characters before LF for some files.
Previous Next
Reported by: Kazuhiro Ito <kzhr <at> d1.dion.ne.jp>
Date: Sat, 27 Apr 2013 12:04:01 UTC
Severity: normal
Found in version 24.3.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #8 received at 14287 <at> debbugs.gnu.org (full text, mbox):
> Date: Sat, 27 Apr 2013 21:03:03 +0900
> From: Kazuhiro Ito <kzhr <at> d1.dion.ne.jp>
>
> When I evaluate the below code on trunk, I get different result from 24.3.
>
> (let ((file (expand-file-name "HELLO" data-directory)))
> (mapcar
> (lambda (coding)
> (with-temp-buffer
> (let ((coding-system-for-read coding))
> (insert-file-contents file))
> (cons coding
> (buffer-substring
> (point-min) (progn (forward-line 1) (point))))))
> '(iso-8859-1-unix
> iso-8859-1-dos
> raw-text-unix
> raw-text-dos
> sjis-unix
> sjis-dos
> iso-2022-7bit-unix
> iso-2022-7bit-dos)))
>
> ->
>
> ((iso-8859-1-unix . "This is a list of ways to say hello in various languages.
> ") (iso-8859-1-dos . "This is a list of ways to say hello in various languages
Does the patch below fix that?
=== modified file 'src/coding.c'
--- src/coding.c 2013-04-24 15:09:49 +0000
+++ src/coding.c 2013-04-27 12:52:02 +0000
@@ -7774,7 +7774,7 @@ decode_coding_gap (struct coding_system
while (src_beg < src)
{
*--dst = *--src;
- if (*src == '\n')
+ if (*src == '\n' && src > src_beg && src[-1] == '\r')
src--;
}
diff = dst - src;
This bug report was last modified 12 years and 27 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.