diff --git a/apps/app_mixmonitor.c b/apps/app_mixmonitor.c index 3f7560edd0..0227ab4333 100644 --- a/apps/app_mixmonitor.c +++ b/apps/app_mixmonitor.c @@ -1249,16 +1249,14 @@ static int manager_mute_mixmonitor(struct mansession *s, const struct message *m static int start_mixmonitor_callback(struct ast_channel *chan, const char *filename, const char *options) { - char *opts[OPT_ARG_ARRAY_SIZE] = { NULL, }; - struct ast_flags flags = { 0 }; - char args[PATH_MAX] = ""; + char args[PATH_MAX]; - if (!ast_strlen_zero(options)) { - ast_app_parse_options(mixmonitor_opts, &flags, opts, ast_strdupa(options)); + if (ast_strlen_zero(options)) { + snprintf(args, sizeof(args), "%s", filename); + } else { + snprintf(args, sizeof(args), "%s,%s", filename, options); } - snprintf(args, sizeof(args), "%s,%s", filename, options); - return mixmonitor_exec(chan, args); }