diff options
Diffstat (limited to 'src/client')
-rw-r--r-- | src/client/toolbar/toolbar.cpp | 10 | ||||
-rw-r--r-- | src/client/toolbar/toolbar.h | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/client/toolbar/toolbar.cpp b/src/client/toolbar/toolbar.cpp index f3fab98..da2d336 100644 --- a/src/client/toolbar/toolbar.cpp +++ b/src/client/toolbar/toolbar.cpp @@ -6,6 +6,7 @@ */ #include <QNetworkInterface> #include <QtAlgorithms> +#include <QProcess> #include "../../shared/settings.h" #include "../net/serverconnection.h" #include "../vnc/vncwindow.h" @@ -462,7 +463,10 @@ void Toolbar::onBtnManager() { } void Toolbar::onBtnLockDesktop() { - QProcess lockP; - lockP.start("/bin/sh", QStringList() << "/opt/openslx/pvs2/lockDesktop.sh"); - lockP.waitForFinished(); + if (this->lockDesktopP.state() == QProcess::NotRunning) { + this->lockDesktopP.start("/bin/sh", QStringList() << "/opt/openslx/pvs2/lockDesktop.sh"); + this->lockDesktopP.waitForFinished(); + } else { + qDebug() << "trying to use lockDesktop-process while it is still running"; + } } diff --git a/src/client/toolbar/toolbar.h b/src/client/toolbar/toolbar.h index 0e118bf..698ac50 100644 --- a/src/client/toolbar/toolbar.h +++ b/src/client/toolbar/toolbar.h @@ -61,6 +61,8 @@ private: void init(); void initMenu(); + QProcess lockDesktopP; + private slots: void onVncServerIsRunning(int port); void onDisconnected(); |