diff options
author | William Jon McCann <jmccann@redhat.com> | 2010-06-23 12:52:01 -0400 |
---|---|---|
committer | William Jon McCann <jmccann@redhat.com> | 2010-06-23 15:27:06 -0400 |
commit | ebc605713a6242eac0f0e34c22b6b350a6b6407e (patch) | |
tree | 3f2e925fbd1593c8a7c3d802c00f628180a6521a | |
parent | 178153f74bcef9ac8983cb3cbe58057a6c8ed94b (diff) | |
download | gdm-ebc605713a6242eac0f0e34c22b6b350a6b6407e.tar.gz |
Fix usage of user manager
Don't use it if it doesn't exit and unref it when done.
(cherry picked from commit e6e949bc1dca27cbd92fa6741d13bf702a02133f)
-rw-r--r-- | gui/simple-greeter/gdm-user-chooser-widget.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gui/simple-greeter/gdm-user-chooser-widget.c b/gui/simple-greeter/gdm-user-chooser-widget.c index 181e6547..483abfe7 100644 --- a/gui/simple-greeter/gdm-user-chooser-widget.c +++ b/gui/simple-greeter/gdm-user-chooser-widget.c @@ -225,6 +225,10 @@ on_item_load (GdmChooserWidget *widget, g_debug ("GdmUserChooserWidget: Loading item for id=%s", id); + if (user_chooser->priv->manager == NULL) { + return; + } + user = gdm_user_manager_get_user (user_chooser->priv->manager, id); if (user != NULL) { update_item_for_user (user_chooser, user); @@ -759,6 +763,11 @@ gdm_user_chooser_widget_dispose (GObject *object) g_object_unref (widget->priv->stock_person_pixbuf); widget->priv->stock_person_pixbuf = NULL; } + + if (widget->priv->manager != NULL) { + g_object_unref (widget->priv->manager); + widget->priv->manager = NULL; + } } static void |