summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/opie-login/passworddialogimpl.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/core/opie-login/passworddialogimpl.cpp b/core/opie-login/passworddialogimpl.cpp
index 951c4e1..852708e 100644
--- a/core/opie-login/passworddialogimpl.cpp
+++ b/core/opie-login/passworddialogimpl.cpp
@@ -208,18 +208,19 @@ bool PasswordDialogImpl::needDialog() {
208 while((pwd = ::getpwent() ) ) { 208 while((pwd = ::getpwent() ) ) {
209 /* found root */ 209 /* found root */
210 if( pwd->pw_uid == 0 ) { 210 if( pwd->pw_uid == 0 ) {
211 QString str = QString::fromLatin1(pwd->pw_passwd ); 211 QString str = QString::fromLatin1(pwd->pw_passwd );
212 212
213 /* 213 /*
214 * If str is really empty it is passwordless anyway... 214 * If str is really empty it is passwordless anyway... or '*' is a hint to set one
215 * on OE/Familiar
215 * else it is shadow based 216 * else it is shadow based
216 */ 217 */
217 if(str.isEmpty() ) 218 if(str.isEmpty() || str == '*' )
218 need = true; 219 need = true;
219 else if ( str == '*' || str == 'x' ) 220 else if ( str == 'x' )
220#ifdef OPIE_LOGIN_SHADOW_PW 221#ifdef OPIE_LOGIN_SHADOW_PW
221 need = QString::fromLatin1( ::getspnam( pwd->pw_name )->sp_pwdp ).isEmpty(); 222 need = QString::fromLatin1( ::getspnam( pwd->pw_name )->sp_pwdp ).isEmpty();
222#else 223#else
223 ; 224 ;
224#endif 225#endif
225 break; 226 break;