On Thu, Jan 12, 2012 at 7:54 AM, Jan Steffens <jan.steffens@gmail.com> wrote:
> On Thu, Jan 12, 2012 at 2:47 PM, Dan McGee <dan@archlinux.org> wrote:
>> This was our only use of the function that had a hardcoded file
>> descriptor.
>>
>> Signed-off-by: Dan McGee <dan@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