[pacman-dev] [PATCH] Use fileno() in isatty() call
Dan McGee
dpmcgee at gmail.com
Thu Jan 12 09:08:14 EST 2012
On Thu, Jan 12, 2012 at 7:54 AM, Jan Steffens <jan.steffens at gmail.com> wrote:
> On Thu, Jan 12, 2012 at 2:47 PM, Dan McGee <dan at archlinux.org> wrote:
>> This was our only use of the function that had a hardcoded file
>> descriptor.
>>
>> Signed-off-by: Dan McGee <dan at archlinux.org>
>> ---
>> src/pacman/pacman.c | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c
>> index 326664d..bce73d2 100644
>> --- a/src/pacman/pacman.c
>> +++ b/src/pacman/pacman.c
>> @@ -801,7 +801,7 @@ int main(int argc, char *argv[])
>> config = config_new();
>>
>> /* disable progressbar if the output is redirected */
>> - if(!isatty(1)) {
>> + if(!isatty(fileno(stdout))) {
>> config->noprogressbar = 1;
>> }
>>
>> --
>> 1.7.8.3
>>
>>
>
> unistd.h contains #define STDOUT_FILENO 1
> Isn't that portable? see man 3p stdout
I will counter with `man 3 stdout`, namely the last bit. :)
On program startup, the integer file descriptors associated with the
streams stdin, stdout, and stderr are 0, 1, and 2, respectively. The
preprocessor symbols STDIN_FILENO, STDOUT_FILENO, and STDERR_FILENO are
defined with these values in <unistd.h>. (Applying freopen(3) to one
of these streams can change the file descriptor number associated with
the stream.)
-Dan
More information about the pacman-dev
mailing list