[gdm/wip/fix-some-fd-leaks: 2/4] manager: Clean up user session when finished with display




commit 1bec91253f259e927abc53579c2d0d46a5097da8
Author: Ray Strode <rstrode redhat com>
Date:   Fri Sep 18 15:46:50 2020 -0400

    manager: Clean up user session when finished with display
    
    The display object stores its associated user session with it
    as object data.  It never clears this session from its object
    data when its done with it however, leading to the session leaking.
    
    This commit plugs the leak and an associated file descriptor leak
    at logout.

 daemon/gdm-manager.c | 2 ++
 1 file changed, 2 insertions(+)
---
diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c
index f19a6746..9c10adff 100644
--- a/daemon/gdm-manager.c
+++ b/daemon/gdm-manager.c
@@ -1545,6 +1545,8 @@ on_display_status_changed (GdmDisplay *display,
                         }
 #endif
 
+                        g_object_set_data (G_OBJECT (display), "gdm-user-session", NULL);
+
                         if (display == manager->priv->automatic_login_display) {
                                 g_clear_weak_pointer (&manager->priv->automatic_login_display);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]