diff options
Diffstat (limited to 'src/vox.c')
-rw-r--r-- | src/vox.c | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -114,9 +114,13 @@ static int vox_start(xas_vox *vox) { "-", "-o", "-", + NULL, + NULL, NULL }; + int argn = 6; + int argc; char **argv; @@ -124,7 +128,14 @@ static int vox_start(xas_vox *vox) { snprintf(sample_rate, sizeof(sample_rate)-1, "%zu", vox->format.sample_rate); - if ((argv = args_concat(6, args, vox->argn, vox->args, &argc)) == NULL) { + if (vox->tmpfile[0] && vox->tmpfd > 0) { + args[6] = "-eval"; + args[7] = vox->tmpfile; + + argn += 2; + } + + if ((argv = args_concat(argn, args, vox->argn, vox->args, &argc)) == NULL) { goto error_child; } |