ウェブメーラー(WebMailer)で送信したメールが文字化けする問題発覚。
99%先月、サーバーを再インストールした時の作業漏れだろう、と思ったが何らかのインストール漏れならばエラーが発生して動かないはず。
やむなく地道にトライ&エラーで調べていったところ、Jcode::convertの
&Jcode::convert(\$value, 'jis', 'euc', "z");の全角変換オプションを外して
&Jcode::convert(\$value, 'jis', 'euc');と書き直したらうまくいった。
なんで今までうまくいってたのがダメになったんだろう?と思って調べてたら、Jcode.pmに書いてある
Perlが5.8.1以降の場合、JcodeはEncodeのラッパーとして振る舞います。 つまり、JcodeはEncode内のバグの影響を受けます。という一節が気になる。確かに、PerlのVersionは 5.8.5 に上がってるから、この絡みなのかなぁ…
【参照】
●Jcode.pm http://openlab.jp/Jcode/
●hiko.pkg http://www.hikoboshi.org/
┗Perl 5.8.x における日本語コード変換のメモ