diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | process.c | 3 |
2 files changed, 8 insertions, 0 deletions
@@ -1,3 +1,8 @@ +Sun Mar 1 16:01:01 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * 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 <akr@fsij.org> * util.c: fix SEGV by test_time.rb with @@ -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) |