Valgrind reports:

==3389== Warning: invalid file descriptor -1 in syscall close()

Check for >= 0 before closing.

This bug was introduced in commit ce83b4a5dd48c000dec68f9d551945d21e9ac7ac
and is specific to 1.9. No backport needed.
---
 src/haproxy.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/haproxy.c b/src/haproxy.c
index 54ab7c86..b4e12f14 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -3099,7 +3099,8 @@ int main(int argc, char **argv)
                                 * workers, we don't need to close the worker
                                 * side of other workers since it's done with
                                 * the bind_proc */
-                               close(child->ipc_fd[0]);
+                               if (child->ipc_fd[0] >= 0)
+                                       close(child->ipc_fd[0]);
                                if (child->relative_pid == relative_pid &&
                                    child->reloads == 0) {
                                        /* keep this struct if this is our pid 
*/
-- 
2.19.2


Reply via email to