diff options
-rw-r--r-- | lumina-desktop/WMProcess.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lumina-desktop/WMProcess.cpp b/lumina-desktop/WMProcess.cpp index 32aee8ea..3a099c06 100644 --- a/lumina-desktop/WMProcess.cpp +++ b/lumina-desktop/WMProcess.cpp @@ -27,8 +27,8 @@ WMProcess::~WMProcess(){ void WMProcess::startWM(){ inShutdown = false; QString cmd = setupWM(); - this->start(cmd); - ssaver->start("xscreensaver -no-splash"); + if(!isRunning()){this->start(cmd); } + if(ssaver->state() == QProcess::NotRunning){ ssaver->start("xscreensaver -no-splash"); } } void WMProcess::stopWM(){ @@ -121,6 +121,7 @@ void WMProcess::processFinished(int exitcode, QProcess::ExitStatus status){ emit WMShutdown(); }else{ //restart the Window manager + qDebug() << "WM Stopped Unexpectedly: Restarting it..." this->startWM(); } }else{ |