From: Andrey Volk Date: Mon, 26 Dec 2022 10:27:03 +0000 (+0300) Subject: [Core] Fix possible file descriptor and a memory leak in switch_xml_parse_file_simple(). X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1901%2Fhead;p=thirdparty%2Ffreeswitch.git [Core] Fix possible file descriptor and a memory leak in switch_xml_parse_file_simple(). --- diff --git a/src/switch_xml.c b/src/switch_xml.c index c43a530252..57bf99c8b6 100644 --- a/src/switch_xml.c +++ b/src/switch_xml.c @@ -1633,7 +1633,7 @@ SWITCH_DECLARE(switch_xml_t) switch_xml_parse_file_simple(const char *file) int fd = -1; struct stat st; switch_ssize_t l; - void *m; + void *m = NULL; switch_xml_root_t root; if ((fd = open(file, O_RDONLY, 0)) > -1) { @@ -1650,6 +1650,11 @@ SWITCH_DECLARE(switch_xml_t) switch_xml_parse_file_simple(const char *file) error: + switch_safe_free(m); + if (fd > -1) { + close(fd); + } + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error Parsing File [%s]\n", file); return NULL;