diff --git a/lib/raop.c b/lib/raop.c index de573cc..cae247e 100644 --- a/lib/raop.c +++ b/lib/raop.c @@ -186,6 +186,7 @@ conn_request(void *ptr, http_request_t *request, http_response_t **response) { plist_to_xml(req_root_node, &plist_xml, &plist_len); logger_log(conn->raop->logger, LOGGER_DEBUG, "%s", plist_xml); free(plist_xml); + plist_free(req_root_node); } else if (data_is_text) { char *data_str = utils_data_to_text((char *) request_data, request_datalen); logger_log(conn->raop->logger, LOGGER_DEBUG, "%s", data_str); diff --git a/lib/raop_handlers.h b/lib/raop_handlers.h index cd5ff26..0d340b3 100644 --- a/lib/raop_handlers.h +++ b/lib/raop_handlers.h @@ -161,6 +161,7 @@ raop_handler_info(raop_conn_t *conn, plist_dict_set_item(r_node, "displays", displays_node); plist_to_bin(r_node, response_data, (uint32_t *) response_datalen); + plist_free(r_node); http_response_add_header(response, "Content-Type", "application/x-apple-binary-plist"); free(pk); free(hw_addr);