From: _ wanabe Date: 2009-11-15T14:11:51+09:00 Subject: [ruby-dev:39692] [Bug #2369] ENV's strange behavior on WinXP Bug #2369: ENV's strange behavior on WinXP http://redmine.ruby-lang.org/issues/show/2369 起票者: _ wanabe ステータス: Open, 優先度: Normal カテゴリ: core, Target version: 1.9.x ruby -v: ruby 1.9.2dev (2009-11-14 trunk 25768) [i386-mingw32] Windows XP SP2 環境の Mingw で、環境変数に最大文字数に近い長さの値か または最大文字数を超えた長さの値を設定しようとした場合の挙動がおかしいようです。 確認用のスクリプトを添付します。 スクリプトのコメントに書きましたとおり、 32767 文字よりやや短い値をセットすると値が正しく取り出せません。 GetEnvironmentVariableAで確認すると正しく取り出せているようです。 また、32767 文字を超えた値を何度もセットすると SEGV します。 恐らくこのために、make test-all が TestRequire#test_require_too_long_filename か あるいは数個先の TestRipper_Generic#test_parse_files 等で落ちます。 根本的には前者は kernel32.dll、後者は msvcrt.dll のバグだとは思うのですが、 よろしければ対策をお願いいたします。 ---------------------------------------- http://redmine.ruby-lang.org