]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
apps/app_mixmonitor: Move Test Event for MIXMONITOR_END to after it finishes
authorMatthew Jordan <mjordan@digium.com>
Sun, 15 Feb 2015 00:31:55 +0000 (00:31 +0000)
committerMatthew Jordan <mjordan@digium.com>
Sun, 15 Feb 2015 00:31:55 +0000 (00:31 +0000)
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.

git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@431788 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_mixmonitor.c

index 235b3d17c59c7af57c46a39e7794768658557da3..89a1d8c52f0bd42e372a462ad9188088b3eed959 100644 (file)
@@ -694,12 +694,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_autochan_destroy(mixmonitor->autochan);
@@ -721,6 +715,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)) {