diff options
-rw-r--r-- | command.c | 1 | ||||
-rw-r--r-- | ui.c | 1 | ||||
-rw-r--r-- | url.c | 2 |
3 files changed, 4 insertions, 0 deletions
@@ -472,6 +472,7 @@ static void commandExec(uint id, char *params) { if (pid < 0) err(EX_OSERR, "fork"); if (pid) return; + setsid(); close(STDIN_FILENO); dup2(execPipe[1], STDOUT_FILENO); dup2(utilPipe[1], STDERR_FILENO); @@ -567,6 +567,7 @@ static void notify(uint id, const char *str) { if (pid < 0) err(EX_OSERR, "fork"); if (pid) return; + setsid(); close(STDIN_FILENO); dup2(utilPipe[1], STDOUT_FILENO); dup2(utilPipe[1], STDERR_FILENO); @@ -123,6 +123,7 @@ static void urlOpen(const char *url) { if (pid < 0) err(EX_OSERR, "fork"); if (pid) return; + setsid(); close(STDIN_FILENO); dup2(utilPipe[1], STDOUT_FILENO); dup2(utilPipe[1], STDERR_FILENO); @@ -174,6 +175,7 @@ static void urlCopy(const char *url) { return; } + setsid(); dup2(rw[0], STDIN_FILENO); dup2(utilPipe[1], STDOUT_FILENO); dup2(utilPipe[1], STDERR_FILENO); |