summaryrefslogtreecommitdiffstats
path: root/kdesktop/lock/lockprocess.h
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2024-08-21 15:43:13 -0500
committerTDE Gitea <gitea@mirror.git.trinitydesktop.org>2024-08-29 16:00:36 +0000
commit37d12d8d467da6e869e33fce21adea1cd85af166 (patch)
tree52921419bc5bafba9f802048b9151fd4d73f9894 /kdesktop/lock/lockprocess.h
parentcc5cfd87c722572c90a6c051a6b7be4eadd1f02e (diff)
downloadtdebase-kdesktop_lock_hang_fix.tar.gz
tdebase-kdesktop_lock_hang_fix.zip
Fix kdesktop lock process hang / denial of servicekdesktop_lock_hang_fix
Under specific circumstances, kdesktop_lock may fail to engage the screen lock when requested. When this occurs, the user is typically present to observe and attempt relock, however the kdesktop_lock process may not respond once the lock has failed to engage and the process has not been restarted. Add a fallback handler for SIGHUP (lock engage) to the kdesktop_lock startup application thread. This ensures the process will always respond to a lock request regardless of lock process state. Signed-off-by: Timothy Pearson <kb9vqf@pearsoncomputing.net>
Diffstat (limited to 'kdesktop/lock/lockprocess.h')
-rw-r--r--kdesktop/lock/lockprocess.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/kdesktop/lock/lockprocess.h b/kdesktop/lock/lockprocess.h
index bfe1fe420..e2a761963 100644
--- a/kdesktop/lock/lockprocess.h
+++ b/kdesktop/lock/lockprocess.h
@@ -4,7 +4,7 @@
//
// Copyright (c) 1999 Martin R. Jones <mjones@kde.org>
// Copyright (c) 2003 Oswald Buddenhagen <ossi@kde.org>
-// Copyright (c) 2010 - 2015 Timothy Pearson <kb9vqf@pearsoncomputing.net>
+// Copyright (c) 2010 - 2024 Timothy Pearson <kb9vqf@pearsoncomputing.net>
//
#ifndef __LOCKENG_H__
@@ -104,6 +104,8 @@ class LockProcess : public TQWidget
void msgBox( TQMessageBox::Icon type, const TQString &txt );
int execDialog( TQDialog* dlg );
+ bool lockPending();
+
TDECryptographicCardDevice* cryptographicCardDevice();
signals:
@@ -181,6 +183,8 @@ class LockProcess : public TQWidget
void generateBackingImages();
void fullyOnline();
+ bool mInitialized;
+ bool mLockPending;
bool mLocked;
int mLockGrace;
int mPriority;