今日は昨日の変更の再修正や追加の修正で主に IO, Thread まわりの変更がありました。
naruse:r36940 2012-09-10 00:17:15 +0900
古い Mac OS X では複数の pthread が起動した状態で execv 系のシステムコールがエラーを返すので一時的にタイマースレッドを止めるようにしていますが、Haiku というプラットフォームでも同じ制約があるので条件に追加しています。
svn:r36941 2012-09-10 00:17:20 +0900
version.h の日付更新。
kosaki:r36942 2012-09-10 02:11:03 +0900
r36932 で close 時に GVL を開放するようにした変更で GVL を開放する前に fd を待ってる Thread への通知をするようにしています。また fptr->mode の変更も GVL 開放して他のスレッドに見える前にしています。 [ruby-core:35711] [Feature #4570]
kosaki:r36943 2012-09-10 02:11:25 +0900
同じく close の GVL 開放で追加した関数のコンパイル時警告抑制のために明示的なキャストを追加しています。 [ruby-core:35711] [Feature #4570]
kosaki:r36944 2012-09-10 02:29:12 +0900
拡張ライブラリ socket や IO#flush, binwrite, syswrite などでも r36931 と同様に不要な rb_thread_fd_writable() の呼び出しを削除しています。 [ruby-core:35586] [Feature #4538]
usa:r36945 2012-09-10 10:20:16 +0900
r34802 の enc/depend で {$(TARGETVPATH)} で置換しているところで置換が発生した時に String#% メソッドで "%s" を整形していなかったのを修正しています。
usa:r36946 2012-09-10 10:41:59 +0900
r36944 の拡張ライブラリ socket での rb_thread_fd_writable() の削除をいくつか revert しています。これがなくなると mswin/mingw で不正終了するようになってしまうそうです。
nobu:r36947 2012-09-10 17:21:02 +0900
r36926 で導入した最後にロック取得待ちするスレッドを保持する patrol_thread という変数を static const に宣言するように修正しています。