From cc06e1ff89ae4b7ffc8d95a8ab1d9b6787a5d142 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Fri, 6 Jan 2012 02:26:04 +0100 Subject: [PATCH] Proc_Close(): Only close socket if it is still valid It could be invalid when calling Proc_Close() a 2nd time, for exmaple, which could happen when we hit a timeout doing IDENT requests :-( --- src/ngircd/proc.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/ngircd/proc.c b/src/ngircd/proc.c index 7addb47e..e062cd0b 100644 --- a/src/ngircd/proc.c +++ b/src/ngircd/proc.c @@ -154,7 +154,10 @@ Proc_Read(PROC_STAT *proc, void *buffer, size_t buflen) GLOBAL void Proc_Close(PROC_STAT *proc) { - io_close(proc->pipe_fd); + /* Close socket, if it exists */ + if (proc->pipe_fd >= 0) + io_close(proc->pipe_fd); + Proc_InitStruct(proc); } -- 2.39.2