summaryrefslogtreecommitdiffstats
path: root/kdesktop/lockeng.cc
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-09-23 03:50:06 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-09-23 03:50:06 +0000
commitbed76819b90b5f40a3f2813ec053c898d7d658d6 (patch)
tree9dd4178b749f4a61c9b54214e42a82f1ef7b2566 /kdesktop/lockeng.cc
parent3b5a657aa92b92d0c766ac17ffff57e9ecc57184 (diff)
downloadtdebase-bed76819b90b5f40a3f2813ec053c898d7d658d6.tar.gz
tdebase-bed76819b90b5f40a3f2813ec053c898d7d658d6.zip
Fix secure dialog handling when KScreenSaver DCOP quit() interface is used
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1255030 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kdesktop/lockeng.cc')
-rw-r--r--kdesktop/lockeng.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/kdesktop/lockeng.cc b/kdesktop/lockeng.cc
index 62e4855a9..b957218a1 100644
--- a/kdesktop/lockeng.cc
+++ b/kdesktop/lockeng.cc
@@ -204,7 +204,7 @@ bool SaverEngine::isBlanked()
void SaverEngine::handleSecureDialog()
{
// Wait for SAK press
- mSAKProcess->start();
+ if (!mSAKProcess->isRunning()) mSAKProcess->start();
}
void SaverEngine::slotSAKProcessExited()
@@ -358,6 +358,9 @@ void SaverEngine::stopLockProcess()
void SaverEngine::lockProcessExited()
{
kdDebug(1204) << "SaverEngine: lock exited" << endl;
+ if (trinity_lockeng_sak_available == TRUE) {
+ handleSecureDialog();
+ }
if( mState == Waiting )
return;
emitDCOPSignal("KDE_stop_screensaver()", TQByteArray());
@@ -372,9 +375,6 @@ void SaverEngine::lockProcessExited()
}
processLockTransactions();
mState = Waiting;
- if (trinity_lockeng_sak_available == TRUE) {
- handleSecureDialog();
- }
}
//---------------------------------------------------------------------------