[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Why does close_stdout close stdout and stderr?
From: |
NeilBrown |
Subject: |
Re: Why does close_stdout close stdout and stderr? |
Date: |
Wed, 08 May 2019 10:43:57 +1000 |
On Tue, May 07 2019, Bruno Haible wrote:
> Assaf Gordon wrote:
>> 4.
>> "fflush" instead of "fclose" seems to work OK, but I do not know
>> if there are other side effects:
>>
>> $ ./aa stdout fflush > /dev/full && echo ok || echo error
>> aa: fflush failed: No space left on device
>> error
>
> Except that it does not work OK on NFS, as explained by the comment
> in close-stream.c (written in 2006):
>
> Even calling fflush is not always sufficient,
> since some file systems (NFS and CODA) buffer written/flushed data
> until an actual close call.
You can achieve that "actual close call" using
error = close(dup(fileno(stdout)));
so you don't actually need to "fclose" if you don't want to.
Any 'close' will do, it doesn't have to be the "last close".
NeilBrown
signature.asc
Description: PGP signature
- Re: Why does close_stdout close stdout and stderr?, (continued)
Re: Why does close_stdout close stdout and stderr?, Paul Eggert, 2019/05/06
Re: Why does close_stdout close stdout and stderr?, Bruno Haible, 2019/05/06
- Re: Why does close_stdout close stdout and stderr?, Assaf Gordon, 2019/05/07
- Re: Why does close_stdout close stdout and stderr?, Assaf Gordon, 2019/05/07
- Re: Why does close_stdout close stdout and stderr?, Bruno Haible, 2019/05/07
- Re: Why does close_stdout close stdout and stderr?,
NeilBrown <=
- Re: Why does close_stdout close stdout and stderr?, Florian Weimer, 2019/05/08
- Re: Why does close_stdout close stdout and stderr?, Paul Eggert, 2019/05/09
- Re: Why does close_stdout close stdout and stderr?, Florian Weimer, 2019/05/09
- Re: Why does close_stdout close stdout and stderr?, NeilBrown, 2019/05/09