Add modal plumber - sacc - sacc(omys), simple console gopher client HTML git clone git://bitreich.org/sacc/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/sacc/ DIR Log DIR Files DIR Refs DIR Tags DIR LICENSE --- DIR commit 12b8b8a338d1791ce2d200f7cad99c9f0b5804d1 DIR parent 7e0793d8395184b5b21ecdd0b13bccb524d1e414 HTML Author: escapeinsert <ben@0x1bi.net> Date: Sat, 2 Oct 2021 15:19:30 -0400 Add modal plumber With this option activated, sacc will wait for the plumber to return before continuing its execution. Diffstat: M config.def.h | 3 +++ M sacc.c | 5 +++++ 2 files changed, 8 insertions(+), 0 deletions(-) --- DIR diff --git a/config.def.h b/config.def.h @@ -23,6 +23,9 @@ /* default plumber */ static char *plumber = "xdg-open"; +/* modal plumber will make sacc wait for the plumber to return */ +static int modalplumber = 0; + /* temporary directory template (must end with six 'X' characters) */ static char tmpdir[] = "/tmp/sacc-XXXXXX"; DIR diff --git a/sacc.c b/sacc.c @@ -651,6 +651,11 @@ plumb(char *url) dup2(devnullfd, 2); if (execlp(plumber, plumber, url, NULL) == -1) _exit(1); + default: + if (modalplumber) { + while (waitpid(-1, NULL, 0) != -1) + ; + } } diag("Plumbed \"%s\"", url);