+ w = None + if waitForStart: + r, w = os.pipe() if os.fork(): # launch child and... - os._exit(0) # kill off parent + code = 0 + if waitForStart: + code = self._waitForStart(r) + os.close(r) + os._exit(code) # kill off parent os.setsid() if os.fork(): # launch child and... os._exit(0) # kill off parent again. @@ -193,6 +213,7 @@ if IReactorDaemonize.providedBy(reactor): reactor.afterDaemonize() + return w