summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cdr/cdr_custom.c2
-rw-r--r--cdr/cdr_syslog.c2
-rw-r--r--cel/cel_custom.c2
-rw-r--r--main/logger.c1
4 files changed, 7 insertions, 0 deletions
diff --git a/cdr/cdr_custom.c b/cdr/cdr_custom.c
index df763639f..6ef2cb094 100644
--- a/cdr/cdr_custom.c
+++ b/cdr/cdr_custom.c
@@ -81,8 +81,10 @@ static AST_RWLIST_HEAD_STATIC(sinks, cdr_custom_config);
static void free_config(void)
{
struct cdr_custom_config *sink;
+
while ((sink = AST_RWLIST_REMOVE_HEAD(&sinks, list))) {
ast_mutex_destroy(&sink->lock);
+ ast_string_field_free_memory(sink);
ast_free(sink);
}
}
diff --git a/cdr/cdr_syslog.c b/cdr/cdr_syslog.c
index 458721aa8..c1169a35c 100644
--- a/cdr/cdr_syslog.c
+++ b/cdr/cdr_syslog.c
@@ -76,8 +76,10 @@ static AST_RWLIST_HEAD_STATIC(sinks, cdr_syslog_config);
static void free_config(void)
{
struct cdr_syslog_config *sink;
+
while ((sink = AST_RWLIST_REMOVE_HEAD(&sinks, list))) {
ast_mutex_destroy(&sink->lock);
+ ast_string_field_free_memory(sink);
ast_free(sink);
}
}
diff --git a/cel/cel_custom.c b/cel/cel_custom.c
index edb009686..0b2ac764f 100644
--- a/cel/cel_custom.c
+++ b/cel/cel_custom.c
@@ -71,8 +71,10 @@ static AST_RWLIST_HEAD_STATIC(sinks, cel_config);
static void free_config(void)
{
struct cel_config *sink;
+
while ((sink = AST_RWLIST_REMOVE_HEAD(&sinks, list))) {
ast_mutex_destroy(&sink->lock);
+ ast_string_field_free_memory(sink);
ast_free(sink);
}
}
diff --git a/main/logger.c b/main/logger.c
index 9f03b4efa..a70b6d15e 100644
--- a/main/logger.c
+++ b/main/logger.c
@@ -168,6 +168,7 @@ static void logmsg_free(struct logmsg *msg)
if (msg->callid) {
ast_callid_unref(msg->callid);
}
+ ast_string_field_free_memory(msg);
ast_free(msg);
}