From 7d32a77fe49fef9dfb0f4129b2570c03545eab52 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 18 Oct 2023 20:00:41 +0530 Subject: [PATCH] ... --- kitty/child-monitor.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kitty/child-monitor.c b/kitty/child-monitor.c index 2e4878295..9e7d29be1 100644 --- a/kitty/child-monitor.c +++ b/kitty/child-monitor.c @@ -262,8 +262,12 @@ inject_peer(PyObject *s, PyObject *a) { talk_thread_started = true; } int fds[2] = {0}; - if (!self_pipe(fds, false)) return PyErr_SetFromErrno(PyExc_OSError); + if (!self_pipe(fds, false)) { + safe_close(fd, __FILE__, __LINE__); + return PyErr_SetFromErrno(PyExc_OSError); + } if (!add_peer_to_injection_queue(fd, fds[1])) { + safe_close(fd, __FILE__, __LINE__); safe_close(fds[0], __FILE__, __LINE__); safe_close(fds[1], __FILE__, __LINE__); PyErr_SetString(PyExc_RuntimeError, "Too many peers waiting to be injected"); return NULL;