added code that makes sure apps executed by epist don't die when epist is killed.

This commit is contained in:
Marius Nita 2002-09-12 09:51:53 +00:00
parent d4b6232f6b
commit 499b1620c1

View file

@ -568,6 +568,12 @@ void screen::updateActiveWindow() {
void screen::execCommand(const string &cmd) const {
pid_t pid;
if ((pid = fork()) == 0) {
// disconnect the child from epist's session and the tty
if (setsid() == -1) {
cout << "warning: could not start a new process group\n";
perror("setsid");
}
// make the command run on the correct screen
if (putenv(const_cast<char*>(_info->displayString().c_str()))) {
cout << "warning: couldn't set environment variable 'DISPLAY'\n";