bug-gawk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug-gawk] make check: 2 TESTS FAILED


From: Andrew J. Schorr
Subject: Re: [bug-gawk] make check: 2 TESTS FAILED
Date: Tue, 22 Oct 2013 15:48:14 -0400
User-agent: Mutt/1.5.21 (2010-09-15)

Hi Arnold,

Regarding the changes to io.c:flush_io:

On Tue, Oct 22, 2013 at 10:27:38PM +0300, Aharon Robbins wrote:
> diff --git a/io.c b/io.c
> index e0632d8..a24ac82 100644
> --- a/io.c
> +++ b/io.c
> @@ -1261,11 +1261,11 @@ flush_io()
>       int status = 0;
>  
>       errno = 0;
> -     if (fflush(stdout)) {
> +     if (fflush(stdout) && errno != EPIPE) {
>               warning(_("error writing standard output (%s)"), 
> strerror(errno));
>               status++;
>       }
> -     if (fflush(stderr)) {
> +     if (fflush(stderr) && errno != EPIPE) {
>               warning(_("error writing standard error (%s)"), 
> strerror(errno));
>               status++;
>       }
> @@ -1316,12 +1316,12 @@ close_io(bool *stdio_problem)
>        * them, we just flush them, and do that across the board.
>        */
>       *stdio_problem = false;
> -     if (fflush(stdout)) {
> +     if (fflush(stdout) != 0 && errno != EPIPE) {
>               warning(_("error writing standard output (%s)"), 
> strerror(errno));
>               status++;
>               *stdio_problem = true;
>       }
> -     if (fflush(stderr)) {
> +     if (fflush(stderr) != 0 && errno != EPIPE) {
>               warning(_("error writing standard error (%s)"), 
> strerror(errno));
>               status++;
>               *stdio_problem = true;

It looks as if this suppresses the warning message and changes the return
status from -1 to 0.  Just checking -- did you intend to change the return
status as well as skipping the warning message?

Regards,
Andy



reply via email to

[Prev in Thread] Current Thread [Next in Thread]