From 7498c391eca1bb92db0feeeb92308cf02d575d4a Mon Sep 17 00:00:00 2001 From: Mike Yuan Date: Fri, 21 Nov 2025 23:23:46 +0100 Subject: [PATCH] core/exec-invoke: remove redundant accmode validation on stderr Follow-up for 171ceb4a00294c700c0ba6906a3a3abad846699e In setup_output() we assume stdout has been set up properly before stderr, hence the stdout we're inheriting from must be writable (or more precisely, would have been adjusted to be). Hence no need to duplicate it. --- src/core/exec-invoke.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/core/exec-invoke.c b/src/core/exec-invoke.c index 7cc377a2535..24e553e1225 100644 --- a/src/core/exec-invoke.c +++ b/src/core/exec-invoke.c @@ -546,17 +546,8 @@ static int setup_output( return fileno; /* Duplicate from stdout if possible */ - if (can_inherit_stderr_from_stdout(context)) { - r = fd_is_writable(STDOUT_FILENO); - if (r <= 0) { - if (r < 0) - log_warning_errno(r, "Failed to check if inherited stdout is writable for stderr, falling back to /dev/null."); - else - log_warning("Inherited stdout is not writable for stderr, falling back to /dev/null."); - return open_null_as(O_WRONLY, fileno); - } + if (can_inherit_stderr_from_stdout(context)) return RET_NERRNO(dup2(STDOUT_FILENO, fileno)); - } o = context->std_error; -- 2.47.3