summaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2011-03-07 16:44:39 -0500
committerRay Strode <rstrode@redhat.com>2011-03-07 16:47:35 -0500
commit9ec8f69ce6b225702c4f6bc0475f16d3bc0ef2fa (patch)
treebc4ce1e523793b1262db7569746d61b250868c27 /gui
parentf7978ec4dd39d3c4aecb462bfc6d0657c7ed6f0d (diff)
downloadgdm-9ec8f69ce6b225702c4f6bc0475f16d3bc0ef2fa.tar.gz
greeter: don't tank if accounts service removes user we don't know about
The chooser right now will throw a critical if we try to remove an item that doesn't exist. There are some situations where users get removed from the account service that we never added to the user list. In those cases, we need to be careful not to try to remove them to prevent crash-inducing criticals. https://bugzilla.gnome.org/show_bug.cgi?id=644149
Diffstat (limited to 'gui')
-rw-r--r--gui/simple-greeter/gdm-user-chooser-widget.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/gui/simple-greeter/gdm-user-chooser-widget.c b/gui/simple-greeter/gdm-user-chooser-widget.c
index 59fee40f..9551ecaf 100644
--- a/gui/simple-greeter/gdm-user-chooser-widget.c
+++ b/gui/simple-greeter/gdm-user-chooser-widget.c
@@ -826,6 +826,18 @@ on_user_removed (ActUserManager *manager,
user_name = act_user_get_user_name (user);
+ /* Ignore removals we aren't interested in */
+ if (!gdm_chooser_widget_lookup_item (GDM_CHOOSER_WIDGET (widget),
+ user_name,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL,
+ NULL)) {
+ return;
+ }
+
gdm_chooser_widget_remove_item (GDM_CHOOSER_WIDGET (widget),
user_name);