From 36fa7bcea7af2d3e06fafd9e9992747e56a8492b Mon Sep 17 00:00:00 2001 From: yugui Date: Wed, 4 Mar 2009 09:19:59 +0000 Subject: merges r22687 from trunk into ruby_1_9_1. -- * process.c (proc_daemon): stops and restarts timer thread because daemon(3) implies fork(2). [ruby-dev:38055] git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_1@22751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ process.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index dc588d831..933acc27a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sun Mar 1 16:01:01 2009 Nobuyoshi Nakada + + * process.c (proc_daemon): stops and restarts timer thread because + daemon(3) implies fork(2). [ruby-dev:38055] + Fri Feb 27 22:02:34 2009 Tanaka Akira * util.c: fix SEGV by test_time.rb with diff --git a/process.c b/process.c index 9070a94d3..21b21b7d1 100644 --- a/process.c +++ b/process.c @@ -4197,7 +4197,10 @@ proc_daemon(int argc, VALUE *argv) rb_scan_args(argc, argv, "02", &nochdir, &noclose); #if defined(HAVE_DAEMON) + prefork(); + before_fork(); n = daemon(RTEST(nochdir), RTEST(noclose)); + after_fork(); if (n < 0) rb_sys_fail("daemon"); return INT2FIX(n); #elif defined(HAVE_FORK) -- cgit