diff options
author | Ray Strode <halfline@gmail.com> | 2018-08-28 17:44:12 +0000 |
---|---|---|
committer | Ray Strode <halfline@gmail.com> | 2018-08-28 17:44:12 +0000 |
commit | 64e1e9c66f5536f0cd94ab07ceb163ce4fee8d41 (patch) | |
tree | 2ead21577c92a5b9a9b277134a11841fd97631f1 | |
parent | efd50c0fc1c70b80a04c9b4dfeb2a518d06dbad2 (diff) | |
parent | d80a8a37935248eee6ad6f9256e1c89693c9335d (diff) | |
download | gdm-64e1e9c66f5536f0cd94ab07ceb163ce4fee8d41.tar.gz |
Merge branch 'wip/fix-dbus-leak' into 'master'
session: make sure conversation is closed before its freed
Closes #388
See merge request GNOME/gdm!36
-rw-r--r-- | daemon/gdm-session.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/daemon/gdm-session.c b/daemon/gdm-session.c index 600da0f3..04f879a7 100644 --- a/daemon/gdm-session.c +++ b/daemon/gdm-session.c @@ -185,6 +185,8 @@ static gboolean gdm_session_is_wayland_session (GdmSession *self); static void update_session_type (GdmSession *self); static void set_session_type (GdmSession *self, const char *session_type); +static void close_conversation (GdmSessionConversation *conversation); + static guint signals [LAST_SIGNAL] = { 0, }; G_DEFINE_TYPE (GdmSession, @@ -1820,6 +1822,8 @@ setup_outside_server (GdmSession *self) static void free_conversation (GdmSessionConversation *conversation) { + close_conversation (conversation); + if (conversation->job != NULL) { g_warning ("Freeing conversation '%s' with active job", conversation->service_name); } |