diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2020-06-05 14:03:30 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2020-06-24 10:38:15 +0200 |
commit | ab9dd0b9975c69953cb73d6c04f1a6af0bb9d5fa (patch) | |
tree | fbc875e3e15aeb3df845adcef3f0beb882be4585 /src/resolve/resolved-etc-hosts.c | |
parent | ceb17827fa9e5014c9750021bb1a98c326cbef34 (diff) | |
download | systemd-ab9dd0b9975c69953cb73d6c04f1a6af0bb9d5fa.tar.gz |
resolved: fix memleak on duplicate host lines in /etc/hosts
Diffstat (limited to 'src/resolve/resolved-etc-hosts.c')
-rw-r--r-- | src/resolve/resolved-etc-hosts.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/resolve/resolved-etc-hosts.c b/src/resolve/resolved-etc-hosts.c index a2c84c17a4..6a7f749957 100644 --- a/src/resolve/resolved-etc-hosts.c +++ b/src/resolve/resolved-etc-hosts.c @@ -120,11 +120,10 @@ static int parse_line(EtcHosts *hosts, unsigned nr, const char *line) { /* Optimize the case where we don't need to store any addresses, by storing * only the name in a dedicated Set instead of the hashmap */ - r = set_ensure_put(&hosts->no_address, &dns_name_hash_ops, name); + r = set_ensure_consume(&hosts->no_address, &dns_name_hash_ops, TAKE_PTR(name)); if (r < 0) return r; - TAKE_PTR(name); continue; } |