diff options
author | Alessandro Bono <alessandro.bono369@gmail.com> | 2022-11-03 13:29:06 +0100 |
---|---|---|
committer | Ray Strode <halfline@gmail.com> | 2023-04-28 19:41:28 +0000 |
commit | 021bf5747b1dfdc77cdb8e2b117e8c9972df681a (patch) | |
tree | 0c5bb214b51d1526d7c5e15808a227ccb94923ab /daemon | |
parent | bc32ee5cf5386a36059b7ebf990bd195bbec3978 (diff) | |
download | gdm-021bf5747b1dfdc77cdb8e2b117e8c9972df681a.tar.gz |
gdm-server: Plug a memory leak
identifier was not freed. While at it use g_autofree and simplify
how the identifier is created.
Diffstat (limited to 'daemon')
-rw-r--r-- | daemon/gdm-server.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/daemon/gdm-server.c b/daemon/gdm-server.c index ebd0a78b..7b73f8e3 100644 --- a/daemon/gdm-server.c +++ b/daemon/gdm-server.c @@ -428,15 +428,9 @@ gdm_server_setup_journal_fds (GdmServer *server) #ifdef ENABLE_SYSTEMD_JOURNAL if (sd_booted () > 0) { int out, err; - const char *prefix = "gdm-Xorg-"; - char *identifier; - gsize size; - - size = strlen (prefix) + strlen (server->display_name) + 1; - identifier = g_alloca (size); - strcpy (identifier, prefix); - strcat (identifier, server->display_name); - identifier[size - 1] = '\0'; + g_autofree char *identifier = NULL; + + identifier = g_strdup_printf("gdm-Xorg-%s", server->display_name); out = sd_journal_stream_fd (identifier, LOG_INFO, FALSE); if (out < 0) |