]> Dogcows Code - chaz/openbox/blobdiff - util/epist/screen.cc
oops. fix workspace warping merge buglet
[chaz/openbox] / util / epist / screen.cc
index 0220a9499ef7ec34676d77784686b9a89e5730d0..5711d5515646beb7f1373d39bd8f5b94db24ffae 100644 (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";
This page took 0.022538 seconds and 4 git commands to generate.