diff --git a/src/greeter.c b/src/greeter.c index 8ef5250..b56ae8d 100644 --- a/src/greeter.c +++ b/src/greeter.c @@ -937,6 +937,8 @@ greeter_finalize (GObject *object) if (self->priv->from_greeter_channel) g_io_channel_unref (self->priv->from_greeter_channel); + close(g_io_channel_unix_get_fd(self->priv->to_greeter_channel)); + close(g_io_channel_unix_get_fd(self->priv->from_greeter_channel)); G_OBJECT_CLASS (greeter_parent_class)->finalize (object); } diff --git a/src/session.c b/src/session.c index bc509cd..b0f09cf 100644 --- a/src/session.c +++ b/src/session.c @@ -245,6 +245,8 @@ session_watch_cb (GPid pid, gint status, gpointer data) if (session->priv->is_guest) guest_account_cleanup (session->priv->username); + close(session->priv->to_child_input); + close(session->priv->from_child_output); /* Drop our reference on the child process, it has terminated */ g_object_unref (session); }