Message ID | 1491567280-20273-1-git-send-email-daniel.baluta@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, On Apr 7 2017 21:14, Daniel Baluta wrote: > Write can return less then requested bytes, but we treat > this as an error. > > Anyhow, errno is not updated in this case and we can end > up with a confusing error message. > > For example, when there is no room to write data into the > output file we receive: > > $ arecord -d 2000 -c 2 -r 192000 -f S16_LE -Dplughw:0,0 audio.wav > Recording WAVE '/mnt/msc/audio.wav' : Signed 16 bit Little Endian, Rate > 192000 Hz, Stereo > audio.wav: No such file or directory > > Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> > --- > aplay/aplay.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/aplay/aplay.c b/aplay/aplay.c > index ee480f2..9547d1b 100644 > --- a/aplay/aplay.c > +++ b/aplay/aplay.c > @@ -3079,7 +3079,7 @@ static void capture(char *orig_name) > break; > } > if (write(fd, audiobuf, c) != c) { > - perror(name); > + fprintf(stderr, "Couldn't write all data to %s\n", name); > in_aborting = 1; > break; > } I agree with this change. A small nitpicking. This utility supports i18n with gettext. Let us use gettext alias to the message? $ cd alsa-utils/aplay $ git grep fprintf\( | wc 57 387 3939 $ git grep fprintf\( | grep _\( | wc 37 260 2570 Regards Takashi Sakamoto
On Vi, 2017-04-07 at 21:56 +0900, Takashi Sakamoto wrote: > Hi, > > On Apr 7 2017 21:14, Daniel Baluta wrote: > > > > Write can return less then requested bytes, but we treat > > this as an error. > > > > Anyhow, errno is not updated in this case and we can end > > up with a confusing error message. > > > > For example, when there is no room to write data into the > > output file we receive: > > > > $ arecord -d 2000 -c 2 -r 192000 -f S16_LE -Dplughw:0,0 audio.wav > > Recording WAVE '/mnt/msc/audio.wav' : Signed 16 bit Little Endian, > > Rate > > 192000 Hz, Stereo > > audio.wav: No such file or directory > > > > Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> > > --- > > aplay/aplay.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/aplay/aplay.c b/aplay/aplay.c > > index ee480f2..9547d1b 100644 > > --- a/aplay/aplay.c > > +++ b/aplay/aplay.c > > @@ -3079,7 +3079,7 @@ static void capture(char *orig_name) > > break; > > } > > if (write(fd, audiobuf, c) != c) { > > - perror(name); > > + fprintf(stderr, "Couldn't write > > all data to %s\n", name); > > in_aborting = 1; > > break; > > } > I agree with this change. > > A small nitpicking. This utility supports i18n with gettext. Let us > use > gettext alias to the message? > > $ cd alsa-utils/aplay > $ git grep fprintf\( | wc > 57 387 3939 > $ git grep fprintf\( | grep _\( | wc > 37 260 2570 > > Sure, will send v2. I didn't know about the gettext alias. :) Daniel.
diff --git a/aplay/aplay.c b/aplay/aplay.c index ee480f2..9547d1b 100644 --- a/aplay/aplay.c +++ b/aplay/aplay.c @@ -3079,7 +3079,7 @@ static void capture(char *orig_name) break; } if (write(fd, audiobuf, c) != c) { - perror(name); + fprintf(stderr, "Couldn't write all data to %s\n", name); in_aborting = 1; break; }
Write can return less then requested bytes, but we treat this as an error. Anyhow, errno is not updated in this case and we can end up with a confusing error message. For example, when there is no room to write data into the output file we receive: $ arecord -d 2000 -c 2 -r 192000 -f S16_LE -Dplughw:0,0 audio.wav Recording WAVE '/mnt/msc/audio.wav' : Signed 16 bit Little Endian, Rate 192000 Hz, Stereo audio.wav: No such file or directory Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com> --- aplay/aplay.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)