There are at least two failure paths, where we forget
to close an fd.
Signed-off-by: Vladimir Sementsov-Ogievskiy <[email protected]>
Reviewed-by: Daniel P. Berrangé <[email protected]>
---
chardev/char-pty.c | 1 +
chardev/char-serial.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/chardev/char-pty.c b/chardev/char-pty.c
index fe6bfb043d..b066f01412 100644
--- a/chardev/char-pty.c
+++ b/chardev/char-pty.c
@@ -350,6 +350,7 @@ static void char_pty_open(Chardev *chr,
close(slave_fd);
if (!qemu_set_blocking(master_fd, false, errp)) {
+ close(master_fd);
return;
}
diff --git a/chardev/char-serial.c b/chardev/char-serial.c
index c622d758db..4c6ca713eb 100644
--- a/chardev/char-serial.c
+++ b/chardev/char-serial.c
@@ -272,6 +272,7 @@ static void qmp_chardev_open_serial(Chardev *chr,
return;
}
if (!qemu_set_blocking(fd, false, errp)) {
+ close(fd);
return;
}
tty_serial_init(fd, 115200, 'N', 8, 1);
--
2.48.1