Fix some easy to find memory leaks...

This commit is contained in:
Willem Toorop 2013-11-04 10:34:14 -08:00
parent bd7740fefa
commit 30d1e11a14
2 changed files with 7 additions and 3 deletions

View File

@ -159,7 +159,7 @@ static getdns_return_t set_os_defaults(getdns_context_t context) {
context->suffix = create_from_ldns_list(rdf_list, rdf_list_sz);
}
/** cleanup **/
ldns_resolver_free(lr);
ldns_resolver_deep_free(lr);
return GETDNS_RETURN_GOOD;
}

View File

@ -396,7 +396,7 @@ static char* get_canonical_name(const char* name) {
return NULL;
}
char* result = convert_rdf_to_str(rdf);
ldns_rdf_free(rdf);
ldns_rdf_deep_free(rdf);
return result;
}
@ -406,6 +406,7 @@ getdns_dict *create_getdns_response(struct getdns_dns_req* completed_request) {
getdns_list* just_addrs = NULL;
getdns_list* replies_tree = getdns_list_create();
getdns_network_req *netreq = completed_request->first_req;
char *canonical_nm;
int r = 0;
@ -416,7 +417,10 @@ getdns_dict *create_getdns_response(struct getdns_dns_req* completed_request) {
}
r |= getdns_dict_set_int(result, GETDNS_STR_KEY_STATUS, GETDNS_RESPSTATUS_GOOD);
r |= getdns_dict_util_set_string(result, GETDNS_STR_KEY_CANONICAL_NM, get_canonical_name(completed_request->name));
canonical_nm = get_canonical_name(completed_request->name);
r |= getdns_dict_util_set_string(result, GETDNS_STR_KEY_CANONICAL_NM, canonical_nm);
free(canonical_nm);
r |= getdns_dict_set_int(result, GETDNS_STR_KEY_ANSWER_TYPE, GETDNS_NAMETYPE_DNS);
while (netreq) {