From 652ddf5ce2fad08f6569096dd56a821500cc5ba4 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Thu, 13 Oct 2011 10:35:41 +0200 Subject: [PATCH] starter: Close open file descriptors after forking. This avoids problems with Android's adb which leaves several file descriptors open when executing processes. --- src/starter/starter.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/starter/starter.c b/src/starter/starter.c index 659122a7a..b1a9a159a 100644 --- a/src/starter/starter.c +++ b/src/starter/starter.c @@ -429,8 +429,11 @@ int main (int argc, char **argv) { case 0: { - int fnull = open("/dev/null", O_RDWR); + int fnull; + closefrom(3); + + fnull = open("/dev/null", O_RDWR); if (fnull >= 0) { dup2(fnull, STDIN_FILENO); @@ -438,6 +441,7 @@ int main (int argc, char **argv) dup2(fnull, STDERR_FILENO); close(fnull); } + setsid(); } break;