From c192dc0ce2dee4c71f276ddb5bf9bc3a59fcb8c5 Mon Sep 17 00:00:00 2001 From: Christian Brauner Date: Sat, 9 Dec 2017 19:00:37 +0100 Subject: [PATCH] coverity: #1425879 do not double close file descriptor Signed-off-by: Christian Brauner --- src/lxc/console.c | 16 +++++++++++----- src/lxc/tools/lxc_attach.c | 1 + 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/lxc/console.c b/src/lxc/console.c index 1beafa492..035f52f7e 100644 --- a/src/lxc/console.c +++ b/src/lxc/console.c @@ -546,14 +546,20 @@ void lxc_console_delete(struct lxc_console *console) free(console->tios); console->tios = NULL; - close(console->peer); - close(console->master); - close(console->slave); - if (console->log_fd >= 0) - close(console->log_fd); + if (console->peer >= 0) + close(console->peer); console->peer = -1; + + if (console->master >= 0) + close(console->master); console->master = -1; + + if (console->slave >= 0) + close(console->slave); console->slave = -1; + + if (console->log_fd >= 0) + close(console->log_fd); console->log_fd = -1; } diff --git a/src/lxc/tools/lxc_attach.c b/src/lxc/tools/lxc_attach.c index beb122048..466c6350e 100644 --- a/src/lxc/tools/lxc_attach.c +++ b/src/lxc/tools/lxc_attach.c @@ -348,6 +348,7 @@ static int get_pty_on_host(struct lxc_container *c, struct wrapargs *wrap, int * if (c->attach(c, get_pty_on_host_callback, wrap, wrap->options, pid) < 0) goto err1; close(conf->console.slave); /* Close slave side. */ + conf->console.slave = -1; ret = lxc_mainloop_open(&descr); if (ret) { -- 2.47.2