diff options
Diffstat (limited to 'src/dbus-lib/dbusdaemon.cpp')
-rw-r--r-- | src/dbus-lib/dbusdaemon.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/dbus-lib/dbusdaemon.cpp b/src/dbus-lib/dbusdaemon.cpp index 0e0117f7..b1072599 100644 --- a/src/dbus-lib/dbusdaemon.cpp +++ b/src/dbus-lib/dbusdaemon.cpp @@ -76,6 +76,13 @@ DBusDaemonProcess::DBusDaemonProcess(QObject *parent) #endif setProgram(program); setArguments(arguments); + +#if defined(Q_OS_LINUX) + setChildProcessModifier([]() { + // at least on Linux we can make sure that those dbus-daemons are always killed + prctl(PR_SET_PDEATHSIG, SIGKILL); + }); +#endif } DBusDaemonProcess::~DBusDaemonProcess() @@ -84,15 +91,6 @@ DBusDaemonProcess::~DBusDaemonProcess() waitForFinished(); } -void DBusDaemonProcess::setupChildProcess() -{ -# if defined(Q_OS_LINUX) - // at least on Linux we can make sure that those dbus-daemons are always killed - prctl(PR_SET_PDEATHSIG, SIGKILL); -# endif - QProcess::setupChildProcess(); -} - void DBusDaemonProcess::start() Q_DECL_NOEXCEPT_EXPR(false) { static const int timeout = 10000 * int(timeoutFactor()); |