diff options
author | Robert Ancell <robert.ancell@canonical.com> | 2016-07-13 13:30:41 +1200 |
---|---|---|
committer | Robert Ancell <robert.ancell@canonical.com> | 2016-07-13 13:30:41 +1200 |
commit | 93c291dddbc8793358faf96ccde325069b2f1ff8 (patch) | |
tree | be4aea5c3f690c6a16ca3b5e07df0620d089defc /liblightdm-gobject/greeter.c | |
parent | fd95eb6d6d08ce027692cb5579a6713e9f07efac (diff) | |
download | lightdm-git-93c291dddbc8793358faf96ccde325069b2f1ff8.tar.gz |
Clean up when greeter object destroyed
Diffstat (limited to 'liblightdm-gobject/greeter.c')
-rw-r--r-- | liblightdm-gobject/greeter.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/liblightdm-gobject/greeter.c b/liblightdm-gobject/greeter.c index 62cb30d6..9c50a5d3 100644 --- a/liblightdm-gobject/greeter.c +++ b/liblightdm-gobject/greeter.c @@ -1884,8 +1884,18 @@ lightdm_greeter_finalize (GObject *object) g_io_channel_unref (priv->to_server_channel); if (priv->from_server_channel) g_io_channel_unref (priv->from_server_channel); - g_free (priv->authentication_user); + g_clear_pointer (&priv->read_buffer, g_free); + g_list_free_full (priv->responses_received, g_free); + priv->responses_received = NULL; + g_list_free_full (priv->connect_requests, g_object_unref); + priv->connect_requests = NULL; + g_list_free_full (priv->start_session_requests, g_object_unref); + priv->start_session_requests = NULL; + g_list_free_full (priv->ensure_shared_data_dir_requests, g_object_unref); + priv->ensure_shared_data_dir_requests = NULL; + g_clear_pointer (&priv->authentication_user, g_free); g_hash_table_unref (priv->hints); + priv->hints = NULL; G_OBJECT_CLASS (lightdm_greeter_parent_class)->finalize (object); } |