From: Florian Westphal Date: Tue, 14 Sep 2010 21:53:59 +0000 (+0200) Subject: Fix signalpipe file descriptor leak on RESTART X-Git-Tag: rel-17-rc1~13 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ba720fcbaeaacee700d7d23936cf481e6fcb83b1;p=ngircd Fix signalpipe file descriptor leak on RESTART Signals_Init() must only be called once. This does not affect any ngircd release version. Earlier version of this patch moved the io and sighandler initialization before the while() loop, but as Alexander Barton noticed that broke all systems without builtin select support in io.c... --- diff --git a/src/ngircd/sighandlers.c b/src/ngircd/sighandlers.c index aaff1eab..80eef3e6 100644 --- a/src/ngircd/sighandlers.c +++ b/src/ngircd/sighandlers.c @@ -266,6 +266,8 @@ Signals_Init(void) #ifdef HAVE_SIGACTION struct sigaction saction; #endif + if (signalpipe[0] > 0 || signalpipe[1] > 0) + return true; if (pipe(signalpipe)) return false;