summaryrefslogtreecommitdiff
path: root/daemon
diff options
context:
space:
mode:
authorAlessandro Bono <alessandro.bono369@gmail.com>2022-11-03 15:52:42 +0100
committerRay Strode <halfline@gmail.com>2023-04-28 19:41:28 +0000
commit9da7070eda73a095af86cb63a45917a2a939104b (patch)
tree19b22e9d59e73ef053217fcb5354c6b5b640e52d /daemon
parentf218d47ad7f509a12481a65e8ab28249b05e708d (diff)
downloadgdm-9da7070eda73a095af86cb63a45917a2a939104b.tar.gz
gdm-manager: Plug a memory leak
session_type was not freed. While at it use g_autofree.
Diffstat (limited to 'daemon')
-rw-r--r--daemon/gdm-manager.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/daemon/gdm-manager.c b/daemon/gdm-manager.c
index 5a2d9125..25744628 100644
--- a/daemon/gdm-manager.c
+++ b/daemon/gdm-manager.c
@@ -1506,7 +1506,7 @@ on_display_status_changed (GdmDisplay *display,
{
int status;
int display_number = -1;
- char *session_type = NULL;
+ g_autofree char *session_type = NULL;
gboolean doing_initial_setup = FALSE;
#ifdef WITH_PLYMOUTH
gboolean display_is_local = FALSE;
@@ -1531,14 +1531,13 @@ on_display_status_changed (GdmDisplay *display,
case GDM_DISPLAY_MANAGED:
if ((display_number == -1 && status == GDM_DISPLAY_PREPARED) ||
(display_number != -1 && status == GDM_DISPLAY_MANAGED)) {
- char *session_class;
+ g_autofree char *session_class = NULL;
g_object_get (display,
"session-class", &session_class,
NULL);
if (g_strcmp0 (session_class, "greeter") == 0)
set_up_session (manager, display);
- g_free (session_class);
}
break;
case GDM_DISPLAY_FAILED: