From: Ian Jackson Date: Sun, 9 Apr 2017 12:01:17 +0000 (+0100) Subject: hippotatd: --pidfile improvement X-Git-Tag: hippotat/1.0.0~55^2~67 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=hippotat.git;a=commitdiff_plain;h=27b796c536c89290d4adfe3043708ffb5903d96d hippotatd: --pidfile improvement Signed-off-by: Ian Jackson --- diff --git a/hippotatd b/hippotatd index a235929..248ea44 100755 --- a/hippotatd +++ b/hippotatd @@ -378,6 +378,8 @@ def daemonise(): daemonic_reactor = (twisted.internet.interfaces.IReactorDaemonize .providedBy(reactor)) if daemonic_reactor: reactor.beforeDaemonize() + if opts.pidfile is not None: + pidfile_h = open(opts.pidfile, 'w') rfd, wfd = os.pipe() childpid = os.fork() if childpid: @@ -395,14 +397,14 @@ def daemonise(): grandchildpid = os.fork() if grandchildpid: # we are the intermediate child + if opts.pidfile is not None: + print(grandchildpid, file=pfh) + pfh.close() os._exit(0) mypid = os.getpid() - if opts.pidfile is not None: - pfh = open(opts.pidfile, 'w') - print(mypid, file=pfh) - pfh.close() - + pfh.close() + logger = subprocess.Popen(['logger','-d', '-t','hippotat(stderr)', '--id=%d' % mypid,