今日は ENV のメソッドが返す文字列を taint するようにする修正や ENV の文字列の Encoding を決定する処理のリファクタリングなどがありました。
usa: r55818 2016-08-05 23:19:26 +0900
r55811 の ENV.assoc の Encoding 変換の変更でテストが失敗するようになったのを修正するため env_str_new() で Windows 版の時に返す文字列を taint しておくようにしています。
nobu: r55819 2016-08-06 00:39:46 +0900
ENV のメソッドが返す文字列を生成する env_str_new() から Encoding の指定を引数で受け取る env_enc_str_new() を切り出しています。またこれまで env_path_str_new() という関数でやってた Windows とそれ以外で Encoding を変えている処理も env_enc_str_new() を流用するようにして、これまで ENV.[] や ENV.fetch の実装でやってた環境変数が PATH の時のみ Encoding を変える処理を env_name_new() およびそこから呼ばれる env_encoding_for() という関数に切り出すリファクタリングをしています。 あと env_enc_str_new() で Windows 以外の環境でも返す文字列を taint しておくようにしています。
svn: r55820 2016-08-06 00:39:47 +0900
version.h の日付更新。