From: han.lu@intel.com
To: tiwai@suse.de, liam.r.girdwood@linux.intel.com,
alsa-devel@alsa-project.org
Cc: "Lu, Han" <han.lu@intel.com>
Subject: [PATCH V2 3/6] alsabat: clean return value for playback and capture threads
Date: Tue, 22 Mar 2016 22:31:35 +0800 [thread overview]
Message-ID: <b79e0525088a5302d03b048b156200e730e31d26.1458655876.git.han.lu@intel.com> (raw)
In-Reply-To: <cover.1458655876.git.han.lu@intel.com>
In-Reply-To: <cover.1458655876.git.han.lu@intel.com>
From: "Lu, Han" <han.lu@intel.com>
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>
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)
--
2.5.0
next prev parent reply other threads:[~2016-03-22 14:30 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-22 14:31 [PATCH V2 0/6] alsabat: clean structure and tinyalsa support han.lu
2016-03-22 14:31 ` [PATCH V2 1/6] alsabat: refactoring alsa capture thread han.lu
2016-03-22 14:31 ` [PATCH V2 2/6] alsabat: use general function for wav header update han.lu
2016-03-22 14:31 ` han.lu [this message]
2016-03-22 14:31 ` [PATCH V2 4/6] alsabat: use general data generator function han.lu
2016-03-22 14:31 ` [PATCH V2 5/6] alsabat: move alsa process to a single block han.lu
2016-03-22 14:31 ` [PATCH V2 6/6] alsabat: add tinyalsa support han.lu
2016-03-22 15:20 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b79e0525088a5302d03b048b156200e730e31d26.1458655876.git.han.lu@intel.com \
--to=han.lu@intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=liam.r.girdwood@linux.intel.com \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).