From 9737e52f63b2b23ad8b4d220deecb3bc35a58037 Mon Sep 17 00:00:00 2001 From: Johannes Naab Date: Thu, 4 Sep 2014 19:49:36 +0200 Subject: [PATCH] Fix memory leak in ldns_pkt_rr_list_by_name() The intermediate copy for section selection wasn't freed. --- packet.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packet.c b/packet.c index 7c427831..54594dde 100644 --- a/packet.c +++ b/packet.c @@ -273,9 +273,15 @@ ldns_pkt_rr_list_by_name(ldns_pkt *packet, if (ret == NULL) { ret = ldns_rr_list_new(); } - ldns_rr_list_push_rr(ret, ldns_rr_list_rr(rrs, i)); + ldns_rr_list_push_rr(ret, + ldns_rr_clone( + ldns_rr_list_rr(rrs, i)) + ); } } + + ldns_rr_list_deep_free(rrs); + return ret; } -- 2.47.3