summaryrefslogtreecommitdiff
path: root/liblightdm-qt
diff options
context:
space:
mode:
authorDavid Edmundson <david@davidedmundson.co.uk>2011-11-26 12:44:09 +0000
committerDavid Edmundson <david@davidedmundson.co.uk>2011-11-26 12:44:09 +0000
commit5da2969ba87b29c4079e997807f4d9495e2ffdad (patch)
treecad0d0a243434af76b3bafaae6b2862febcd31b6 /liblightdm-qt
parent5981a0e74a1ec193c3d86f58f8674a4b204de41b (diff)
parentb6ca4e9de4a55054b59388e806c7a059ecaba83e (diff)
downloadlightdm-5da2969ba87b29c4079e997807f4d9495e2ffdad.tar.gz
Merge commit
Diffstat (limited to 'liblightdm-qt')
-rw-r--r--liblightdm-qt/usersmodel.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/liblightdm-qt/usersmodel.cpp b/liblightdm-qt/usersmodel.cpp
index a23c1cac..b76426fc 100644
--- a/liblightdm-qt/usersmodel.cpp
+++ b/liblightdm-qt/usersmodel.cpp
@@ -43,6 +43,7 @@ namespace QLightDM {
class UsersModelPrivate {
public:
UsersModelPrivate(UsersModel *parent);
+ virtual ~UsersModelPrivate();
QList<UserItem> users;
protected:
@@ -64,6 +65,11 @@ UsersModelPrivate::UsersModelPrivate(UsersModel* parent) :
g_type_init();
}
+UsersModelPrivate::~UsersModelPrivate()
+{
+ g_signal_handlers_disconnect_by_func(lightdm_user_list_get_instance(), NULL, this);
+}
+
void UsersModelPrivate::loadUsers()
{
Q_Q(UsersModel);
@@ -94,9 +100,10 @@ void UsersModelPrivate::loadUsers()
g_signal_connect(lightdm_user_list_get_instance(), "user-added", G_CALLBACK (cb_userAdded), this);
g_signal_connect(lightdm_user_list_get_instance(), "user-changed", G_CALLBACK (cb_userChanged), this);
g_signal_connect(lightdm_user_list_get_instance(), "user-removed", G_CALLBACK (cb_userRemoved), this);
-
}
+
+
void UsersModelPrivate::cb_userAdded(LightDMUserList *user_list, LightDMUser *ldmUser, gpointer data)
{
Q_UNUSED(user_list)