diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c index 4ec9e648f3..141f89c01a 100644 --- a/res/res_musiconhold.c +++ b/res/res_musiconhold.c @@ -1103,9 +1103,10 @@ static void moh_class_destructor(void *obj) while ((member = AST_LIST_REMOVE_HEAD(&class->members, list))) { free(member); } - + if (class->thread) { pthread_cancel(class->thread); + pthread_join(class->thread, NULL); class->thread = AST_PTHREADT_NULL; }