summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLu, Han <han.lu@intel.com>2016-03-23 15:52:44 +0800
committerTakashi Iwai <tiwai@suse.de>2016-03-23 17:51:21 +0100
commiteac9b149b46eb608307071944c057647e429953f (patch)
tree40725821d88132bd2c191668652b01cf5ae0b95f
parent2c37a6f9c4660142e031bebdef215f39de405115 (diff)
downloadalsa-utils-eac9b149b46eb608307071944c057647e429953f.tar.gz
alsabat: clean return value for playback and capture threads
Remove unnecessary prints in playback and capture threads, and replace the return value "0" with error code for convenience of maintaining. Signed-off-by: Lu, Han <han.lu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--bat/alsa.c31
1 files changed, 12 insertions, 19 deletions
diff --git a/bat/alsa.c b/bat/alsa.c
index 5acc2bc..aae2eb0 100644
--- a/bat/alsa.c
+++ b/bat/alsa.c
@@ -316,18 +316,13 @@ static int write_to_pcm_loop(struct pcm_container *sndpcm, struct bat *bat)
while (1) {
err = generate_input_data(sndpcm, bytes, bat);
- if (err < 0)
- return err;
- else if (err > 0)
+ if (err != 0)
break;
if (bat->debugplay) {
- err = fwrite(sndpcm->buffer, 1, bytes, fp);
- if (err != bytes) {
- fprintf(bat->err, _("Write file error: "));
- fprintf(bat->err, _("%s(%d)\n"),
- snd_strerror(err), err);
- return -EIO;
+ if (fwrite(sndpcm->buffer, 1, bytes, fp) != bytes) {
+ err = -EIO;
+ break;
}
bytes_total += bytes;
}
@@ -339,7 +334,7 @@ static int write_to_pcm_loop(struct pcm_container *sndpcm, struct bat *bat)
err = write_to_pcm(sndpcm, frames, bat);
if (err != 0)
- return err;
+ break;
}
if (bat->debugplay) {
@@ -349,7 +344,7 @@ static int write_to_pcm_loop(struct pcm_container *sndpcm, struct bat *bat)
snd_pcm_drain(sndpcm->handle);
- return 0;
+ return err;
}
/**
@@ -405,7 +400,7 @@ void *playback_alsa(struct bat *bat)
}
err = write_to_pcm_loop(&sndpcm, bat);
- if (err != 0) {
+ if (err < 0) {
retval_play = err;
goto exit4;
}
@@ -484,14 +479,12 @@ static int read_from_pcm_loop(struct pcm_container *sndpcm, struct bat *bat)
/* read a chunk from pcm device */
err = read_from_pcm(sndpcm, frames, bat);
if (err != 0)
- return err;
+ break;
/* write the chunk to file */
- err = fwrite(sndpcm->buffer, 1, size, fp);
- if (err != size) {
- fprintf(bat->err, _("Write file error: %s(%d)\n"),
- snd_strerror(err), err);
- return -EIO;
+ if (fwrite(sndpcm->buffer, 1, size, fp) != size) {
+ err = -EIO;
+ break;
}
bytes_read += size;
@@ -506,7 +499,7 @@ static int read_from_pcm_loop(struct pcm_container *sndpcm, struct bat *bat)
update_wav_header(bat, fp, bytes_read);
fclose(fp);
- return 0;
+ return err;
}
static void pcm_cleanup(void *p)