Bug #2954: wrong result of nkf with --numchar-input
http://redmine.ruby-lang.org/issues/show/2954

起票者: Nobuyoshi Nakada
ステータス: Open, 優先度: Normal
担当者: Yui NARUSE, カテゴリ: ext, Target version: 1.9.x
ruby -v: 1.9.2dev (2010-03-13 trunk 26898)

Bug #2953のコードを1.9で実行すると空になります。

$ ./ruby bug-2953.rb | od -tx1z
0000000 22 22 0a 0a                                      >""..<
0000004

nkf_buf_t->ptrはnkf_charの配列ですが、nkf_buf_pop()はunsigned
charになってるために最下位バイト以外は捨てられてしまいます。

これをnkf_charを返すようにしても、"\xe2\xa0\xae\x9f"というおかし
な結果になります。std_getc()でnkf_buf_pop()とgetc()が同列になっ
ているあたりが問題のような気がします。


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