From bfee1d44a3d09a25586fe364c0cde74ebf0fa638 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 21 Aug 2023 12:52:14 -0700 Subject: [PATCH] Pacify gcc -Wanalyzer-fd-use-without-check * src/system.c (sys_exec_setmtime_script): Treat fds with more care. --- src/system.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/system.c b/src/system.c index b7e39f7c..e8370c55 100644 --- a/src/system.c +++ b/src/system.c @@ -963,15 +963,15 @@ sys_exec_setmtime_script (const char *script_name, FATAL_ERROR ((0, errno, _("chdir failed"))); } - close (0); - close (1); - - if (open (dev_null, O_RDONLY) == -1) - open_error (dev_null); - - if (dup2 (p[1], 1) == -1) - FATAL_ERROR ((0, errno, _("dup2 failed"))); close (p[0]); + if (dup2 (p[1], STDOUT_FILENO) < 0) + FATAL_ERROR ((0, errno, _("dup2 failed"))); + if (p[1] != STDOUT_FILENO) + close (p[1]); + + close (STDIN_FILENO); + if (open (dev_null, O_RDONLY) != STDIN_FILENO) + open_error (dev_null); priv_set_restore_linkdir (); xexec (command);