dwl

My patch set and modifications to dwl
git clone git://git.ethandl.dev/dwl
Log | Files | Refs | README | LICENSE

commit ebfefa84bad5a930df4df85b150c27f1d4fe6de6
parent 2d9740c2fc481d42eb0deace797553172cc234d9
Author: Humm <hummsmith42@gmail.com>
Date:   Wed, 13 Oct 2021 23:11:40 +0200

-s: close unused fds

dup2 doesn’t close fds, it only duplicates them.  The old ones weren’t
closed, causing problems (like dwl blocking due to the child process
never reading from the reading end, even if stdin has been closed).

Diffstat:
Mdwl.c | 2++
1 file changed, 2 insertions(+), 0 deletions(-)

diff --git a/dwl.c b/dwl.c @@ -1823,11 +1823,13 @@ run(char *startup_cmd) EBARF("startup: fork"); if (startup_pid == 0) { dup2(piperw[0], STDIN_FILENO); + close(piperw[0]); close(piperw[1]); execl("/bin/sh", "/bin/sh", "-c", startup_cmd, NULL); EBARF("startup: execl"); } dup2(piperw[1], STDOUT_FILENO); + close(piperw[1]); close(piperw[0]); } /* If nobody is reading the status output, don't terminate */