diff options
Diffstat (limited to 'process.cpp')
-rw-r--r-- | process.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/process.cpp b/process.cpp index 64bbc13..d3d8fdb 100644 --- a/process.cpp +++ b/process.cpp @@ -259,7 +259,8 @@ void Process::stop() { if (mProcess->state() == QProcess::QProcess::NotRunning) { printf("No process running\n"); - qApp->exit(); + if (!mBeingRestarted) + qApp->exit(); return; } @@ -276,6 +277,13 @@ void Process::stop() mProcess->kill(); } +void Process::stopForRestart() +{ + printf("Stopping application for restart\n"); + mBeingRestarted = true; + stop(); +} + void Process::restart() { printf("Restarting application\n"); @@ -313,6 +321,8 @@ void Process::incomingConnection(int i) stop(); else if (command == "restart") restart(); + else if (command == "stopForRestart") + stopForRestart(); else stop(); } |