summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2015-10-01 03:22:29 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2015-10-01 03:23:27 -0500
commit2028aa37a3aad4a77e8f45e81d3ef5f0d7694b10 (patch)
tree0df1499c4dcc826f9c2301b5afddbae3d924d1f2
parentd6572f16d55904290d0d261edf73006e5a54ca30 (diff)
downloadtdebase-2028aa37.tar.gz
tdebase-2028aa37.zip
Fix kdesktop_lock crash on error with certain PAM stack configurations
-rw-r--r--tdmlib/kgreet_classic.cpp28
1 files changed, 19 insertions, 9 deletions
diff --git a/tdmlib/kgreet_classic.cpp b/tdmlib/kgreet_classic.cpp
index f99acfb3c..24fe32ede 100644
--- a/tdmlib/kgreet_classic.cpp
+++ b/tdmlib/kgreet_classic.cpp
@@ -482,22 +482,32 @@ KClassicGreeter::revive()
}
}
- // assert( !running );
- setActive2( true );
+ // assert(!running);
+ setActive2(true);
if (authTok) {
- passwd1Edit->erase();
- passwd2Edit->erase();
- passwd1Edit->setFocus();
- } else {
+ if (passwd1Edit) {
+ passwd1Edit->erase();
+ }
+ if (passwd2Edit) {
+ passwd2Edit->erase();
+ }
+ if (passwd1Edit) {
+ passwd1Edit->setFocus();
+ }
+ }
+ else {
passwdEdit->erase();
- if (loginEdit && loginEdit->isEnabled())
+ if (loginEdit && loginEdit->isEnabled()) {
passwdEdit->setEnabled( true );
+ }
else {
setActive( true );
- if (loginEdit && loginEdit->text().isEmpty())
+ if (loginEdit && loginEdit->text().isEmpty()) {
loginEdit->setFocus();
- else
+ }
+ else {
passwdEdit->setFocus();
+ }
}
}
}