diff --git a/src/mod/applications/mod_conference/mod_conference.c b/src/mod/applications/mod_conference/mod_conference.c index dcb03eec33..332857fc83 100644 --- a/src/mod/applications/mod_conference/mod_conference.c +++ b/src/mod/applications/mod_conference/mod_conference.c @@ -425,6 +425,7 @@ void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, void *ob } } + switch_mutex_lock(conference->file_mutex); /* If a file or speech event is being played */ if (conference->fnode && !switch_test_flag(conference->fnode, NFLAG_PAUSE)) { /* Lead in time */ @@ -531,6 +532,7 @@ void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, void *ob } } } + switch_mutex_lock(conference->file_mutex); if (ready || has_file_data) { /* Use more bits in the main_frame to preserve the exact sum of the audio samples. */