ruby-changes:23957
From: akr <ko1@a...>
Date: Sun, 10 Jun 2012 12:17:27 +0900 (JST)
Subject: [ruby-changes:23957] akr:r36008 (trunk): * io.c (popen_exec): don't call rb_thread_atfork_before_exec. use
akr 2012-06-10 12:16:32 +0900 (Sun, 10 Jun 2012) New Revision: 36008 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=36008 Log: * io.c (popen_exec): don't call rb_thread_atfork_before_exec. use rb_exec_async_signal_safe instead of rb_exec_err. (pipe_open): use rb_fork_async_signal_safe instead of rb_fork_err. Modified files: trunk/ChangeLog trunk/io.c Index: ChangeLog =================================================================== --- ChangeLog (revision 36007) +++ ChangeLog (revision 36008) @@ -1,3 +1,9 @@ +Sun Jun 10 12:15:18 2012 Tanaka Akira <akr@f...> + + * io.c (popen_exec): don't call rb_thread_atfork_before_exec. use + rb_exec_async_signal_safe instead of rb_exec_err. + (pipe_open): use rb_fork_async_signal_safe instead of rb_fork_err. + Sun Jun 10 11:44:57 2012 Tanaka Akira <akr@f...> * process.c (rb_fork_internal): call after_fork only unless Index: io.c =================================================================== --- io.c (revision 36007) +++ io.c (revision 36008) @@ -5461,8 +5461,7 @@ { struct popen_arg *p = (struct popen_arg*)pp; - rb_thread_atfork_before_exec(); - return rb_exec_err(p->execp, errmsg, errmsg_len); + return rb_exec_async_signal_safe(p->execp, errmsg, errmsg_len); } #endif @@ -5539,7 +5538,7 @@ } if (eargp) { rb_exec_arg_fixup(arg.execp); - pid = rb_fork_err(&status, popen_exec, &arg, arg.execp->redirect_fds, errmsg, sizeof(errmsg)); + pid = rb_fork_async_signal_safe(&status, popen_exec, &arg, arg.execp->redirect_fds, errmsg, sizeof(errmsg)); } else { pid = rb_fork(&status, 0, 0, Qnil); -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/