ruby-trunk-changes r36127 - r36139

naruse:r36127 2012-06-19 11:58:40 +0900

r36123 の readline のインクリメンタルサーチ中のエスケープシーケンスの対応はEditLine では動かないようなので ESC の定義の有無で分岐して条件コンパイルするようにしています。

naruse:r36128 2012-06-19 11:58:43 +0900

readline で代入しているけど使っていなかった変数の除去と、special_prefix の取得のショートカット(rl_special_prefix をみて NULL ならすぐ Qnil を返す)を追加しています。

svn:r36129 2012-06-19 11:58:45 +0900

version.h の日付更新。

naruse:r36130 2012-06-19 12:00:46 +0900

readline で環境によってウィンドウサイズを変更した時に readline が追随しない不具
合を修正しています。 [ruby-dev:44586] [Bug #5423]

naruse:r36131 2012-06-19 12:05:54 +0900

readline の pre_input_hook と insert_text を使ったテストを Readline 4.3 ではスキップするようにしています。 Readline 本体の不具合もしくは仕様の変化のためのようです。 [ruby-dev:45620] [Feature #5785]

naruse:r36132 2012-06-19 13:15:37 +0900

readline のインクリメンタルサーチにマルチバイト文字を渡すとううまくいかない不具合についてのテストを追加しています。 [ruby-dev:45493] [Bug #6262]

naruse:r36133 2012-06-19 15:30:55 +0900

readline のインクリメンタルサーチにマルチバイト文字を渡すテストは locale が UTF-8 のときだけ実行するように skip を追加しています。

nobu:r36134 2012-06-19 17:51:57 +0900

Process.spawn のコマンド解析時に NUM2MODET() を呼ぶと、Ruby のメソッドが呼ばれる可能性があるので signal-async-safe でなくなるので FIX2LONG() に置き換えて、STATIC_ASSERT というマクロを利用して long と mode_t のサイズが同じことをチェックするようにしています。 STATIC_ASSERT() は sizeof(long) と sizeof(mode_t)の比較結果を使って不一致だと負の数値になるようにして配列サイズに利用することでコンパイルエラーを引き起こそうとしています。
マイナーなコンパイラでこの部分がコンパイル通らなくなりそうな……。

akr:r36135 2012-06-19 18:14:18 +0900

process.c の async-signal-safe かどうかのコメントの引数による条件が間違っていた部分を修正しています。

nobu:r36136 2012-06-19 18:21:58 +0900

拡張ライブラリ readline の extconf.rb でグローバル変数を利用していたところをオブジェクトに状態を持たせて関数的に使っていたメソッドを特異メソッドとして定義することでグローバル変数を削除しています。

nobu:r36137 2012-06-19 18:22:01 +0900

Test::Unit の並列テストで子プロセスの Worker から親へメッセージを送る処理をメソッドとして切り出すリファクタリングをしています。

nobu:r36138 2012-06-19 18:43:53 +0900

include/ruby/backward/rubysig.h に宣言されている古いrb_thread_blocking_region_end() などの関数の可視性を公開に設定していなかったのを修正しています。 [ruby-dev:45772] [Bug #6607]

marcandre:r36139 2012-06-19 22:58:30 +0900

BasicObject の rdoc サンプルコード内の typo を修正。