[#44566] [Ruby 1.9 - Bug #5386][Open] FiberオブジェクトのGC時にSEGV — Kazuki Tsujimoto <kazuki@...>
[#44581] [Ruby 1.9 - Bug #5419][Open] FileUtils.cp_rの:preserveの動作 — Masatoshi Seki <seki@...>
[#44589] [Ruby 1.9 - Bug #5429][Open] 64ビットなFreeBSDのioctlでビット31が1なリクエストの時の不具合 — Makoto Kishimoto <redmine@...>
2011年11月14日11:25 Tomoyuki Chikanaga <nagachika00@gmail.com>:
[#44604] Ruby 2.0 release plan — "NARUSE, Yui" <naruse@...>
ささださんが既にいくつか 2.0 関連のメールを投げていらっしゃいますが、
sora_h です.
On 10/18/2011 03:49 PM, Shota Fukumori (sora_h) wrote:
RUBY_VERSION の存在をすっかり忘れていました.なるほど.
まつもと ゆきひろです
(2011/10/18 16:15), Yukihiro Matsumoto wrote:
まつもと ゆきひろです
On 10/18/2011 10:16 PM, Yukihiro Matsumoto wrote:
まつもと ゆきひろです
たとえば2.0の次のバージョン番号はどうしますか?
2011年10月20日3:31 Urabe Shyouhei <shyouhei@ruby-lang.org>:
In message <CAK6Hhsqwv0wh8OVBb3Z5BQrh3-7dLHhL-pXvW+CBv8U1rayYZg@mail.gmail.com>
なかだです。
まつもと ゆきひろです
On 10/20/2011 01:45 PM, Yukihiro Matsumoto wrote:
まつもと ゆきひろです
(2011/10/20 13:36), Yukihiro Matsumoto wrote:
まつもと ゆきひろです
(2011/10/20 23:36), Yukihiro Matsumoto wrote:
遠藤です。
2011年10月18日17:41 Yusuke Endoh <mame@tsg.ne.jp>:
遠藤です。
2011年10月18日17:43 Yusuke Endoh <mame@tsg.ne.jp>:
遠藤です。
まつもとさん
まつもと ゆきひろです
遠藤です。
[#44680] [Ruby 2.0 - Feature #5454] keyword arguments — Yusuke Endoh <mame@...>
[#44688] [ruby-trunk - Bug #5475][Open] r33507以降SolarisでPTYが使えない — Naohisa Goto <ngotogenome@...>
MjAxMRskQkcvGyhCMTAbJEI3bhsoQjI0GyRCRnwbKEIxNjo1NiBOYW9oaXNhIEdvdG8gPG5nb3Rv
On Mon, 24 Oct 2011 18:43:39 +0900
[#44702] Re: [ruby-cvs:40712] nobu:r33534 (trunk): * configure.in (RUBY_FUNC_ATTRIBUTE): unset temporary variable. — Tanaka Akira <akr@...>
2011/10/27 <nobu@ruby-lang.org>:
boronのお守りをしている西田です.
2011年10月27日19:54 Yuya.Nishida. <yuya@j96.org>:
[#44707] [ruby-trunk - Feature #5512][Open] Integer#/ の改訂 — tadayoshi funaba <redmine@...>
まつもと ゆきひろです
遠藤です。
[#44713] Re: [ruby-changes:21512] akr:r33561 (trunk): * configure.in: check dup3. — KOSAKI Motohiro <kosaki.motohiro@...>
(ruby-devへ河岸をうつします)
[#44719] [ruby-trunk - Feature #5520][Open] Numeric#exact?、Numeric#inexact? の追加 — tadayoshi funaba <redmine@...>
[#44720] [ruby-trunk - Feature #5521][Open] Numeric#rational?、Numeric#complex?、Numeric#float? の追加 — tadayoshi funaba <redmine@...>
まつもと ゆきひろです
むらたです。
[#44734] IO.select timeout — Tanaka Akira <akr@...>
気がついたのですが、IO.select で、timeout を使ったとき、
> 気がついたのですが、IO.select で、timeout を使ったとき、
[#44735] [ruby-trunk - Feature #2968] 数値の正負を返すメソッド — Kenta Murata <muraken@...>
[ruby-dev:44715] Re: [ruby-changes:21512] akr:r33561 (trunk): * configure.in: check dup3.
2011年10月31日5:26 KOSAKI Motohiro <kosaki.motohiro@gmail.com>:
>
> akrさん、このコードなんですが、rb_cloexec_dup2(oldfd, newfd)のoldfdとnewfdが一致する可能性は
> あるでしょうか?あるとしたら、どういう動作をすべきと意図しているAPIでしょうか?
公開APIなので、可能性はあり得るでしょう。
動作は、dup2() + CLOEXECをセット、という名前なので、
一致したら、CLOEXECをセットだけがいいかなぁ。
> といいますのも、さいきんglibcのメーリングリストでdup2とdup3とで oldfd == newfd のときの
> 仕様が異なっており、libcのdup2() が システムコールのdup3() を呼ぶようにしてしまったので、
> regressionしたというバグが報告されています。
>
> http://cygwin.com/ml/libc-alpha/2011-09/msg00061.html
なるほど。
% svn diff --diff-cmd diff -x '-u --ignore-all-space -p'
Index: io.c
===================================================================
--- io.c (revision 33577)
+++ io.c (working copy)
@@ -239,6 +239,10 @@ rb_cloexec_dup2(int oldfd, int newfd)
{
int ret;
+ if (oldfd == newfd) {
+ ret = newfd;
+ }
+ else {
#if defined(HAVE_DUP3) && defined(O_CLOEXEC)
static int try_dup3 = 1;
if (2 < newfd && try_dup3) {
@@ -258,6 +262,7 @@ rb_cloexec_dup2(int oldfd, int newfd)
ret = dup2(oldfd, newfd);
#endif
if (ret == -1) return -1;
+ }
fd_set_cloexec(ret);
return ret;
}
> btw, めちゃくちゃ余談なんですが、dup3でEINVALにしてるのは本当にいい仕様なんですかねえ?
dup3 だけの仕様としてみれば悪くないように思えます。
oldfd == newfd かどうかで close の回数が変わってきますから、
いずれその判断はアプリケーション側でやらないといけないでしょう。
どうせやるなら dup3 の前にやることを勧めてもいいのでは。
dup2 の drop in replacement として使いにくいという点との比較については、
どの段階の状況を重視するかですかねぇ。
--
[田中 哲][たなか あきら][Tanaka Akira]