apps/app_mixmonitor: Move Test Event for MIXMONITOR_END to after it finishes

The Test Event for MIXMONITOR_END - which signals that a MixMonitor has
completed - technically fired before the filestream was closed. If a test
used this to trigger a condition to verify that the file was written, it
could result in a race condition where the file size would not be what the
test expected.

Luckily, no tests were using this (although they should have been). Since the
test event needed to be moved after the point where the MixMonitor autochan has
been destroyed, the test event no longer emits the channel name. Luckily,
nothing needs it.
........

Merged revisions 431788 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 431789 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@431790 65c4cc65-6c06-0410-ace0-fbb531ad65f3
changes/42/42/1
Matthew Jordan 10 years ago
parent 455a98a2f8
commit d1bd8b091b

@ -727,12 +727,6 @@ static void *mixmonitor_thread(void *obj)
ast_audiohook_lock(&mixmonitor->audiohook);
}
/* Test Event */
ast_test_suite_event_notify("MIXMONITOR_END", "Channel: %s\r\n"
"File: %s\r\n",
ast_channel_name(mixmonitor->autochan->chan),
mixmonitor->filename);
ast_audiohook_unlock(&mixmonitor->audiohook);
ast_channel_lock(mixmonitor->autochan->chan);
@ -760,6 +754,7 @@ static void *mixmonitor_thread(void *obj)
}
ast_verb(2, "End MixMonitor Recording %s\n", mixmonitor->name);
ast_test_suite_event_notify("MIXMONITOR_END", "File: %s\r\n", mixmonitor->filename);
if (!AST_LIST_EMPTY(&mixmonitor->recipient_list)) {
if (ast_strlen_zero(fs_ext)) {

Loading…
Cancel
Save