aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--editors/sed.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/editors/sed.c b/editors/sed.c
index a5ef400fc..28f0c7318 100644
--- a/editors/sed.c
+++ b/editors/sed.c
@@ -1365,6 +1365,8 @@ int sed_main(int argc UNUSED_PARAM, char **argv)
/* Set permissions/owner of output file */
fstat(fileno(file), &statbuf);
+ /* chmod'ing AFTER chown would preserve suid/sgid bits,
+ * but GNU sed 4.2.1 does not preserve them either */
fchmod(nonstdoutfd, statbuf.st_mode);
fchown(nonstdoutfd, statbuf.st_uid, statbuf.st_gid);
add_input_file(file);