summaryrefslogtreecommitdiff
path: root/liblightdm-qt
diff options
context:
space:
mode:
authorDavid Edmundson <david@davidedmundson.co.uk>2011-11-11 01:23:35 +0000
committerDavid Edmundson <david@davidedmundson.co.uk>2011-11-11 01:23:35 +0000
commitff9840a78034159935b940e15eec9631338e8d1e (patch)
treecad37fd1a4e3cbe78187f9efdb33246661588741 /liblightdm-qt
parent5420763b2719ca183459a17649d3c0ed30e330a3 (diff)
downloadlightdm-ff9840a78034159935b940e15eec9631338e8d1e.tar.gz
Make code in user model more sane.
Diffstat (limited to 'liblightdm-qt')
-rw-r--r--liblightdm-qt/user.cpp29
1 files changed, 14 insertions, 15 deletions
diff --git a/liblightdm-qt/user.cpp b/liblightdm-qt/user.cpp
index aa7d67e9..f5adba70 100644
--- a/liblightdm-qt/user.cpp
+++ b/liblightdm-qt/user.cpp
@@ -181,25 +181,27 @@ QList<User> UsersModel::getUsers()
{
QString file = "/etc/lightdm/users.conf";
qDebug() << "Loading user configuration from " << file;
- QSettings *settings = new QSettings(file, QSettings::IniFormat);
+ QSettings settings(file, QSettings::IniFormat);
- int minimumUid = settings->value("UserAccounts/minimum-uid", QVariant(500)).toInt();
+ int minimumUid = settings.value("UserAccounts/minimum-uid", QVariant(500)).toInt();
QStringList hiddenShells;
- if (settings->contains("UserAccounts/hidden-shells"))
- hiddenShells = settings->value("UserAccounts/hidden-shells").toString().split(" ");
- else
+ if (settings.contains("UserAccounts/hidden-shells")) {
+ hiddenShells = settings.value("UserAccounts/hidden-shells").toString().split(" ");
+ }
+ else {
hiddenShells = QStringList() << "/bin/false" << "/usr/sbin/nologin";
+ }
QStringList hiddenUsers;
- if (settings->contains("UserAccounts/hidden-users"))
- hiddenUsers = settings->value("UserAccounts/hidden-users").toString().split(" ");
- else
+ if (settings.contains("UserAccounts/hidden-users")) {
+ hiddenUsers = settings.value("UserAccounts/hidden-users").toString().split(" ");
+ }
+ else {
hiddenUsers = QStringList() << "nobody" << "nobody4" << "noaccess";
-
+ }
QList<User> users;
setpwent();
- while(TRUE)
- {
+ Q_FOREVER {
errno = 0;
struct passwd *entry = getpwent();
if(!entry) {
@@ -244,7 +246,6 @@ QList<User> UsersModel::getUsers()
}
endpwent();
- delete settings;
return users;
}
@@ -253,8 +254,6 @@ void UsersModel::loadUsers()
{
QList<User> usersToAdd;
- //FIXME accidently not got the "if contact removed" code. Need to restore that.
- //should call beginRemoveRows, and then remove the row from the model.
//might get rid of "User" object, keep as private object (like sessionsmodel) - or make it copyable.
//loop through all the new list of users, if it's in the list already update it (or do nothing) otherwise append to list of new users
@@ -302,4 +301,4 @@ void UsersModel::loadUsers()
}
}
-#include "user_moc.cpp" \ No newline at end of file
+#include "user_moc.cpp"