* io.c (pipe_open): Added rb_thread_atfork(). We must reinitialize

GVL at new process creation.




git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30364 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
kosaki 2010-12-25 10:22:48 +00:00
Родитель 1b40391d3d
Коммит c9958d6ab4
2 изменённых файлов: 6 добавлений и 0 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Sat Dec 25 20:01:40 2010 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* io.c (pipe_open): Added rb_thread_atfork(). We must reinitialize
GVL at new process creation.
Sat Dec 25 18:26:55 2010 Tanaka Akira <akr@fsij.org>
* ext/socket/option.c (inspect_ipv6_mreq): new function to inspect

1
io.c
Просмотреть файл

@ -5072,6 +5072,7 @@ pipe_open(struct rb_exec_arg *eargp, VALUE prog, const char *modestr, int fmode,
fflush(stdin); /* is it really needed? */
pid = rb_fork(&status, 0, 0, Qnil);
if (pid == 0) { /* child */
rb_thread_atfork();
popen_redirect(&arg);
rb_io_synchronized(RFILE(orig_stdout)->fptr);
rb_io_synchronized(RFILE(orig_stderr)->fptr);