diff options
Diffstat (limited to 'sys-apps/accountsservice/files/accountsservice-fix-nameless-users-crash.patch')
-rw-r--r-- | sys-apps/accountsservice/files/accountsservice-fix-nameless-users-crash.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sys-apps/accountsservice/files/accountsservice-fix-nameless-users-crash.patch b/sys-apps/accountsservice/files/accountsservice-fix-nameless-users-crash.patch new file mode 100644 index 00000000..28e3f029 --- /dev/null +++ b/sys-apps/accountsservice/files/accountsservice-fix-nameless-users-crash.patch @@ -0,0 +1,29 @@ +From 74c01ff9e3a3b00810ae69db2f2d089b68c5220a Mon Sep 17 00:00:00 2001 +From: Matthias Clasen <mclasen@redhat.com> +Date: Fri, 15 Apr 2011 16:24:51 +0000 +Subject: Don't crash when removing nameless users + +Every person had in the beginning one only proper name, except the savages +of Mount Atlas in Barbary, which were reported to be both nameless and +dreamless. + +https://bugs.freedesktop.org/show_bug.cgi?id=35872 +--- +diff --git a/src/libaccountsservice/act-user-manager.c b/src/libaccountsservice/act-user-manager.c +index 4e25bf9..7202b07 100644 +--- a/src/libaccountsservice/act-user-manager.c ++++ b/src/libaccountsservice/act-user-manager.c +@@ -732,7 +732,10 @@ remove_user (ActUserManager *manager, + if (act_user_get_object_path (user) != NULL) { + g_hash_table_remove (manager->priv->users_by_object_path, act_user_get_object_path (user)); + } +- g_hash_table_remove (manager->priv->users_by_name, act_user_get_user_name (user)); ++ if (act_user_get_user_name (user) != NULL) { ++ g_hash_table_remove (manager->priv->users_by_name, act_user_get_user_name (user)); ++ ++ } + + if (manager->priv->is_loaded) { + g_signal_emit (manager, signals[USER_REMOVED], 0, user); +-- +cgit v0.8.3-6-g21f6 |