diff options
author | David Edmundson <david@davidedmundson.co.uk> | 2011-11-26 12:44:09 +0000 |
---|---|---|
committer | David Edmundson <david@davidedmundson.co.uk> | 2011-11-26 12:44:09 +0000 |
commit | 5da2969ba87b29c4079e997807f4d9495e2ffdad (patch) | |
tree | cad0d0a243434af76b3bafaae6b2862febcd31b6 /liblightdm-qt | |
parent | 5981a0e74a1ec193c3d86f58f8674a4b204de41b (diff) | |
parent | b6ca4e9de4a55054b59388e806c7a059ecaba83e (diff) | |
download | lightdm-5da2969ba87b29c4079e997807f4d9495e2ffdad.tar.gz |
Merge commit
Diffstat (limited to 'liblightdm-qt')
-rw-r--r-- | liblightdm-qt/usersmodel.cpp | 9 |
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) |