+ // These three lines close the open file descriptors to
+ // to avoid any input/output which might block the process
+ // or irritate the user. If one wants proper IO for the sub-
+ // process, the "right thing to do" is to start an xterm executing
+ // it.
+ close(STDIN_FILENO);
+ close(STDOUT_FILENO);
+ close(STDERR_FILENO);
+ // some programs complain about sterr not being open, so
+ // redirect them:
+ open("/dev/null", O_RDONLY); // stdin
+ open("/dev/null", O_WRONLY); // stdout
+ open("/dev/null", O_WRONLY); // stderr
+