From 2fef50cd9eee59cea6145639f6bd464939fac624 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 16 Sep 2020 22:16:10 +0200 Subject: [PATCH] nspawn: fix fd leak on failure path --- src/nspawn/nspawn.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c index de9f1f534c..1b7578581d 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -2275,7 +2275,7 @@ static int setup_pts(const char *dest) { } static int setup_stdio_as_dev_console(void) { - int terminal; + _cleanup_close_ int terminal = -1; int r; terminal = open_terminal("/dev/console", O_RDWR); @@ -2290,6 +2290,7 @@ static int setup_stdio_as_dev_console(void) { /* invalidates 'terminal' on success and failure */ r = rearrange_stdio(terminal, terminal, terminal); + TAKE_FD(terminal); if (r < 0) return log_error_errno(r, "Failed to move console to stdin/stdout/stderr: %m");