Issue #7892 has been updated by naruse (Yui NARUSE).


????????????

???????????????????????????????????????????
????????????????????????????????????? alphabets ?????????????????????????????????????????????
???=?ISO-2022-JP?B?blahblah?= alphabets =?ISO-2022-JP?B?blah?=???????????????????????????????
???=?ISO-2022-JP?B?blahblah?= alphabets<????>=?ISO-2022-JP?B?blah?=????????????????????
????????????????????????????????????

?述??????????????????????????????????????????????????????????????????足????????????
????????????????????????????????????Ruby???????????????????????????????正?? MIME encode ?????????????????使???????

diff --git a/nkf.c b/nkf.c
index 705fb55..d3fde19 100644
--- a/nkf.c
+++ b/nkf.c
@@ -5421,28 +5421,6 @@ mime_putc(nkf_char c)
                mimeout_state.buf[mimeout_state.count++] = (char)c;
                return;
            }
-           if (nkf_isspace(c)) {
-               for (i=0;i<mimeout_state.count;i++) {
-                   if (SP<mimeout_state.buf[i] && mimeout_state.buf[i]<DEL) {
-                       eof_mime();
-                       for (i=0;i<mimeout_state.count;i++) {
-                           (*o_mputc)(mimeout_state.buf[i]);
-                           base64_count++;
-                       }
-                       mimeout_state.count = 0;
-                   }
-               }
-               mimeout_state.buf[mimeout_state.count++] = (char)c;
-               if (mimeout_state.count>MIMEOUT_BUF_LENGTH) {
-                   eof_mime();
-                   for (i=0;i<mimeout_state.count;i++) {
-                       (*o_mputc)(mimeout_state.buf[i]);
-                       base64_count++;
-                   }
-                   mimeout_state.count = 0;
-               }
-               return;
-           }
            if (mimeout_state.count>0 && SP<c && c!='=') {
                mimeout_state.buf[mimeout_state.count++] = (char)c;
                if (mimeout_state.count>MIMEOUT_BUF_LENGTH) {

----------------------------------------
Bug #7892: MIME encoding bug of NKF.nkf
https://bugs.ruby-lang.org/issues/7892#change-36666

Author: mrkn (Kenta Murata)
Status: Open
Priority: Normal
Assignee: naruse (Yui NARUSE)
Category: ext
Target version: next minor
ruby -v: ruby 2.0.0dev (2013-02-08 trunk 39161) [x86_64-darwin11.4.2]


NKF ??? MIME encoding ?????????? 1.8 ??? 1.9/2.0 ????????????

# 1.8 ?????
$ /usr/bin/ruby -rnkf -ve "puts NKF.nkf('-jW -M --cp932', '???????????????????????????????????? by ???????????????????????????????????????')"
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin11.0]
=?ISO-2022-JP?B?GyRCIVYkIiQiJCIkIiQiJCIkIiQiJCIkIiQiGyhC?= by
 =?ISO-2022-JP?B?GyRCJCIkIiQiJCIkIiQiJCIkIiQiJCIhVyROJWwlNyVUGyhC?=

# 1.9.3-p385 ?????
$ ruby -rnkf -ve "puts NKF.nkf('-jW -M --cp932', '???????????????????????????????????? by ???????????????????????????????????????')"
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-darwin11.4.2]
=?ISO-2022-JP?B?GyRCIVYkIiQiJCIkIiQiJCIkIiQiJCIkIiQiGyhC?= by
 =?US-ASCII?Q??=
 =?ISO-2022-JP?B?GyRCJCIkIiQiJCIkIiQiJCIkIiQiJCIhVyROJWwlNyVUGyhC?=

# 2.0.0-rc2 ?????
$ RBENV_VERSION=2.0.0-rc2 rbenv exec ruby -rnkf -ve "puts NKF.nkf('-jW -M --cp932', '???????????????????????????????????? by ???????????????????????????????????????')"
ruby 2.0.0dev (2013-02-08 trunk 39161) [x86_64-darwin11.4.2]
=?ISO-2022-JP?B?GyRCIVYkIiQiJCIkIiQiJCIkIiQiJCIkIiQiGyhC?= by
 =?US-ASCII?Q??=
 =?ISO-2022-JP?B?GyRCJCIkIiQiJCIkIiQiJCIkIiQiJCIhVyROJWwlNyVUGyhC?=



-- 
http://bugs.ruby-lang.org/