On Mon, 14 Mar 2016 10:15:20 +0100, Lu, Han wrote:
Hi Takashi,
-----Original Message----- From: Takashi Iwai [mailto:tiwai@suse.de] Sent: Friday, March 11, 2016 9:34 PM To: Lu, Han han.lu@intel.com Cc: liam.r.girdwood@linux.intel.com; Gautier, Bernard bernard.gautier@intel.com; Popescu, Edward C edward.c.popescu@intel.com; alsa-devel@alsa-project.org Subject: Re: [alsa-devel] [PATCH 09/10] alsabat: use variable for thread return value
On Wed, 02 Mar 2016 09:53:19 +0100, han.lu@intel.com wrote:
From: "Lu, Han" han.lu@intel.com
Replace fixed "1" to variable for thread return value.
Signed-off-by: Lu, Han han.lu@intel.com
diff --git a/bat/alsa.c b/bat/alsa.c index 0a5f899..189b0e9 100644 --- a/bat/alsa.c +++ b/bat/alsa.c @@ -309,13 +309,13 @@ void *playback_alsa(struct bat *bat) if (err != 0) { fprintf(bat->err, _("Cannot open PCM playback device: ")); fprintf(bat->err, _("%s(%d)\n"), snd_strerror(err), err);
retval_play = 1;
retval_play = err;
goto exit1; }
err = set_snd_pcm_params(bat, &sndpcm); if (err != 0) {
retval_play = 1;
goto exit2; }retval_play = err;
@@ -332,13 +332,13 @@ void *playback_alsa(struct bat *bat) fprintf(bat->err, _("Cannot open file for playback: ")); fprintf(bat->err, _("%s %d\n"), bat->playback.file, -errno);
retval_play = 1;
retval_play = -errno;
Is the original errno still preserved at this point...?
[han] I think so, the complete code section here is ... bat->fp = fopen(bat->playback.file, "rb"); if (bat->fp == NULL) { fprintf(bat->err, _("Cannot open file for playback: ")); fprintf(bat->err, _("%s %d\n"), bat->playback.file, -errno);
retval_play = 1;
goto exit3; } ...retval_play = -errno;
So the use of errno should be safe.
You call a bunch of functions between the fopen() error and the reference of errno. The errno reference should be done immediately after the error.
Takashi