summaryrefslogtreecommitdiffstats
path: root/kdesktop/lock/lockprocess.cc
diff options
context:
space:
mode:
Diffstat (limited to 'kdesktop/lock/lockprocess.cc')
-rw-r--r--kdesktop/lock/lockprocess.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/kdesktop/lock/lockprocess.cc b/kdesktop/lock/lockprocess.cc
index 80616b79c..34fa1c45f 100644
--- a/kdesktop/lock/lockprocess.cc
+++ b/kdesktop/lock/lockprocess.cc
@@ -1636,6 +1636,18 @@ bool LockProcess::checkPass()
return 0;
if (trinity_desktop_lock_use_sak) {
+ // Verify SAK operational status
+ KProcess* checkSAKProcess = new KProcess;
+ *checkSAKProcess << "kdmtsak" << "check";
+ checkSAKProcess->start(KProcess::Block, KProcess::NoCommunication);
+ int retcode = checkSAKProcess->exitStatus();
+ delete checkSAKProcess;
+ if (retcode != 0) {
+ trinity_desktop_lock_use_sak = false;
+ }
+ }
+
+ if (trinity_desktop_lock_use_sak) {
// Wait for SAK press before continuing...
SAKDlg inDlg( this );
execDialog( &inDlg );