diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c index 4d70b575fb..47038011ef 100644 --- a/res/res_musiconhold.c +++ b/res/res_musiconhold.c @@ -1385,9 +1385,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; }