summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-07-08 18:04:44 -0400
committerSven Eden <yamakuzure@gmx.net>2017-07-25 09:46:53 +0200
commit1f4ffab4a84a9fb4c7b10c01a2435f79c39ef05e (patch)
treed8fee28fdde78fa074f930d5fab783607c728f8f
parent774663fa082de3fe169d1ae5de8757a92d58a4c5 (diff)
sd-login: fix memleak when output argument is NULL
-rw-r--r--src/libelogind/sd-login/sd-login.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/libelogind/sd-login/sd-login.c b/src/libelogind/sd-login/sd-login.c
index 5f90ba70c..80b8f8fef 100644
--- a/src/libelogind/sd-login/sd-login.c
+++ b/src/libelogind/sd-login/sd-login.c
@@ -942,7 +942,8 @@ _public_ int sd_get_uids(uid_t **users) {
}
_public_ int sd_get_machine_names(char ***machines) {
- char **l, **a, **b;
+ _cleanup_strv_free_ char **l = NULL;
+ char **a, **b;
int r;
r = get_files_in_directory("/run/systemd/machines/", &l);
@@ -971,8 +972,10 @@ _public_ int sd_get_machine_names(char ***machines) {
*b = NULL;
}
- if (machines)
+ if (machines) {
*machines = l;
+ l = NULL;
+ }
return r;
}