nPOPmuの文字化け対策を覚え書き。
inpopu.cgiの中の
$_ = Jcode->new($_, 'MIME-Header')->sjis;
を
$_ = Jcode->new($_)->mime_decode->sjis;
に
&jis("$body\n");
を
Jcode->new($body)->jis . "\n";
に
変更すれば大丈夫みたい。
要するに入力文字列のエンコードを決め打ちしないでJcode.pmに自動判別してもらえば良いということなんだけど、詳しい原因がよく分からない。アプリ側ではちゃんとUTF-8に変換してるはずなんだけどなー。
しかもクライアントによっては文字化けが発生したりしなかったりするらしい。まあこれはクライアントにエンコード不明の文字列を自動(最適)判別する仕組みがあるかどうか、ということなんだろう。
で、何でここに書いているかといえばバージョン変えるのがめんどくさいだけ。まあinpopu.cgiは更新してあって、Google サイトのバージョンがv.2にあがってるから区別はつくと思う。