]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolved-dns-rr: don't leak s if base64_append fails
authorDavid Tardon <dtardon@redhat.com>
Thu, 18 Mar 2021 12:13:04 +0000 (13:13 +0100)
committerDavid Tardon <dtardon@redhat.com>
Thu, 18 Mar 2021 12:13:04 +0000 (13:13 +0100)
src/resolve/resolved-dns-rr.c

index 7e76e0c6cc08c0f029d4e7dd3d571bcde842eed7..66ed24c817422fbe36c93f2e15deceba8adda036 100644 (file)
@@ -820,8 +820,8 @@ static char *format_txt(DnsTxtItem *first) {
 }
 
 const char *dns_resource_record_to_string(DnsResourceRecord *rr) {
-        _cleanup_free_ char *t = NULL;
-        char *s, k[DNS_RESOURCE_KEY_STRING_MAX];
+        _cleanup_free_ char *s = NULL, *t = NULL;
+        char k[DNS_RESOURCE_KEY_STRING_MAX];
         int r;
 
         assert(rr);
@@ -1171,7 +1171,7 @@ const char *dns_resource_record_to_string(DnsResourceRecord *rr) {
         }
 
         rr->to_string = s;
-        return s;
+        return TAKE_PTR(s);
 }
 
 ssize_t dns_resource_record_payload(DnsResourceRecord *rr, void **out) {