mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-31 22:25:33 -04:00
when using record mode, allow file to save data to to be passed on the command line
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@675 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
parent
6a3b8aeb3f
commit
93327083d9
1 changed files with 17 additions and 17 deletions
|
|
@ -517,25 +517,25 @@ int main(int argc, char *argv[]) {
|
|||
fprintf(stderr, "Opening a %s stream with sample specification '%s'.\n", mode == RECORD ? "recording" : "playback", t);
|
||||
}
|
||||
|
||||
if (optind+1 < argc) {
|
||||
fprintf(stderr, "Too many arguments.\n");
|
||||
goto quit;
|
||||
}
|
||||
|
||||
if (optind+1 == argc) {
|
||||
int fd;
|
||||
|
||||
if ((fd = open(argv[optind], O_RDONLY)) < 0) {
|
||||
fprintf(stderr, "open(): %s\n", strerror(errno));
|
||||
if (!(optind >= argc)) {
|
||||
if (optind+1 == argc) {
|
||||
int fd;
|
||||
|
||||
if ((fd = open(argv[optind], mode == PLAYBACK ? O_RDONLY : O_WRONLY|O_TRUNC|O_CREAT)) < 0) {
|
||||
fprintf(stderr, "open(): %s\n", strerror(errno));
|
||||
goto quit;
|
||||
}
|
||||
|
||||
if (dup2(fd, mode == PLAYBACK ? 0 : 1) < 0) {
|
||||
fprintf(stderr, "dup2(): %s\n", strerror(errno));
|
||||
goto quit;
|
||||
}
|
||||
|
||||
close(fd);
|
||||
} else {
|
||||
fprintf(stderr, "Too many arguments.\n");
|
||||
goto quit;
|
||||
}
|
||||
|
||||
if (dup2(fd, 0) < 0) {
|
||||
fprintf(stderr, "dup2(): %s\n", strerror(errno));
|
||||
goto quit;
|
||||
}
|
||||
|
||||
close(fd);
|
||||
}
|
||||
|
||||
/* Set up a new main loop */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue