OSDN Git Service

Fix: LF between ISO-2022-JP causes broken output. [nkf-bug#19779]
authorNARUSE Yui <naruse@users.sourceforge.jp>
Thu, 3 Dec 2009 07:40:06 +0000 (16:40 +0900)
committerNARUSE Yui <naruse@users.sourceforge.jp>
Thu, 3 Dec 2009 07:40:06 +0000 (16:40 +0900)
reported by efialtes

nkf.c
nkf_test.pl

diff --git a/nkf.c b/nkf.c
index 1662e71..8b903c9 100644 (file)
--- a/nkf.c
+++ b/nkf.c
@@ -4959,7 +4959,7 @@ mime_putc(nkf_char c)
                        mimeout_addchar(mimeout_state.buf[i]);
                    }
                    mimeout_state.count = 0;
-               } else if (SP<c && c<DEL) {
+               } else {
                    eof_mime();
                    for (i=0;i<mimeout_state.count;i++) {
                        (*o_mputc)(mimeout_state.buf[i]);
index 5a7a5cb..237fb32 100644 (file)
@@ -1011,6 +1011,19 @@ eom
 =?US-ASCII?Q?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa?=
  =?US-ASCII?Q?aaaaaaaaaaaaaaaaa?= =?ISO-2022-JP?B?GyRCJCIbKEI=?=
 eom
+# test_data/bug19779
+
+$example{'test_data/bug19779'} = unpack('u',<<'eofeof');
+2&R1","$;*$(*&R1"7V8;*$(*
+eofeof
+
+$example{'test_data/bug19779.ans'} = unpack('u',<<'eofeof');
+M/3])4T\M,C`R,BU*4#]"/T=Y4D--0T5B2T5)/3\]"CT_25-/+3(P,C(M2E`_
+10C]'>5)#6#)98DM%23T_/0H`
+eofeof
+
+printf "%-40s",  "test_data/bug19779    ";
+    &test("$nkf -jM",$example{'test_data/bug19779'},$example{'test_data/bug19779.ans'});
 
     if (!NKF) {
 printf "%-40s", "Guess NL";