diff options
author | Rainer Keller <rainer.keller@digia.com> | 2014-10-07 14:37:23 +0200 |
---|---|---|
committer | Rainer Keller <rainer.keller@theqtcompany.com> | 2014-10-07 15:42:43 +0300 |
commit | 1dbc31296d393bb542b0a99f7047dcb13aae3ce3 (patch) | |
tree | f7f2a90e30503d9be1456f3bc8c64451d077ef57 | |
parent | d09694b1d6ffd3cae744e5e1460c673333a9811a (diff) |
Revert "Always create a process group and session"QtEE_v3.2.0
This change introduces bug QTEE-784.
This reverts commit 224cdd83d41d659ec166f7177a549d391ed1d5cc.
Change-Id: I925b0fa4b75b22a19374a5229eb651df2352aa00
Reviewed-by: Samuli Piippo <samuli.piippo@digia.com>
-rw-r--r-- | main.cpp | 4 | ||||
-rw-r--r-- | process.cpp | 6 |
2 files changed, 4 insertions, 6 deletions
@@ -230,8 +230,6 @@ int main(int argc, char **argv) return 1; } - ::setpgid(0,0); // must be called before setsid() - ::setsid(); Config config = parseConfigFile(); while (!args.isEmpty()) { @@ -249,6 +247,8 @@ int main(int argc, char **argv) } } else if (arg == "--debug-gdb") { useGDB = true; + setpgid(0,0); // must be called before setsid() + setsid(); } else if (arg == "--debug-qml") { useQML = true; } else if (arg == "--stop") { diff --git a/process.cpp b/process.cpp index 31e28bd..b7e7342 100644 --- a/process.cpp +++ b/process.cpp @@ -222,14 +222,12 @@ void Process::stop() if (kill(mDebuggee, SIGKILL) != 0) perror("Could not kill debugee"); } + if (kill(-getpid(), SIGTERM) != 0) + perror("Could not kill process group"); mProcess->terminate(); if (!mProcess->waitForFinished()) mProcess->kill(); - - // Just for completeness terminate the whole group - // in case the application has started subprocesses - ::kill(-getpid(), SIGTERM); } void Process::incomingConnection(int i) |