ruby-trunk-changes r51638 - r51643

今日は IO#each_codepoint の追加修正、Windows 版の lstat の修正などがありました。

nobu: r51638 2015-08-19 16:57:20 +0900

IO#each_codepoint の実装で不正な文字を含んでいたかどうかのフラグを未初期化のまま使う可能性があったので初期化するようにしています。 [Bug #11444]

svn: r51639 2015-08-19 16:57:37 +0900

version.h の日付更新。

nobu: r51640 2015-08-19 23:48:09 +0900

Windows 版の lstat() の実装で readlink() の代替実装と同様に reparse point という機構を使っているときにそのタイプが IO_REPARSE_TAG_SYMLINK か IO_REPARSE_TAG_MOUNT_POINT であるかをチェックするようにしています。 reparse point じゃなくて dedup というのを使っている時に lstat が Errno::EINVAL を発生させていたようです。 [ruby-core:70454] [Bug #11462]

nobu: r51641 2015-08-19 23:55:32 +0900

Kernel#spawn の rdoc 用コメントの環境変数のオプションについて値も nil か String でないといけないということを追記しています。 [ruby-core:70456] [Bug #11463]

tenderlove: r51642 2015-08-19 23:59:58 +0900

拡張ライブラリ openssl の OpenSSL::SSL::SSLContext#initialize で options を OpenSSL::SSL::OP_ALL で初期化していたのを、フラグを追加するように書きかえています。拡張ライブラリ ではこの時点で未初期化ですが、OpenSSL ライブラリのほうで SSL_CTX_get_options() で取得するオプションのデフォルトの値が設定されていることがありえるので、それを消してしまわないようにしています。

svn: r51643 2015-08-20 00:01:08 +0900

version.h の日付更新。