--- app_mixmonitor.c.saved 2006-02-15 00:07:24.000000000 +1100 +++ app_mixmonitor.c 2006-02-16 22:27:44.000000000 +1100 @@ -211,6 +211,17 @@ if (option_verbose > 1) ast_verbose(VERBOSE_PREFIX_2 "Begin MixMonitor Recording %s\n", name); + if (mixmonitor->post_process) { + char *p; + + for (p = mixmonitor->post_process; *p ; p++) { + if (*p == '^' && *(p+1) == '{') { + *p = '$'; + } + } + pbx_substitute_variables_helper(mixmonitor->chan, mixmonitor->post_process, post_process, sizeof(post_process) - 1); + } + while (1) { struct ast_frame *next; int write; @@ -245,17 +256,6 @@ ast_mutex_unlock(&spy.lock); } - if (mixmonitor->post_process) { - char *p; - - for (p = mixmonitor->post_process; *p ; p++) { - if (*p == '^' && *(p+1) == '{') { - *p = '$'; - } - } - pbx_substitute_variables_helper(mixmonitor->chan, mixmonitor->post_process, post_process, sizeof(post_process) - 1); - } - stopmon(mixmonitor->chan, &spy); if (option_verbose > 1)