GNU bug report logs - #35046
[PATCH] factor: check the standard output instead of the standard input

Previous Next

Package: coreutils;

Reported by: Shugo Maeda <shugo <at> ruby-lang.org>

Date: Sat, 30 Mar 2019 08:31:02 UTC

Severity: normal

Tags: patch

Done: Pádraig Brady <P <at> draigBrady.com>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 35046 <at> debbugs.gnu.org (full text, mbox):

From: Pádraig Brady <P <at> draigBrady.com>
To: Shugo Maeda <shugo <at> ruby-lang.org>, 35046 <at> debbugs.gnu.org
Subject: Re: bug#35046: [PATCH] factor: check the standard output instead of
 the standard input
Date: Sat, 30 Mar 2019 14:58:52 -0700
On 29/03/19 23:43, Shugo Maeda wrote:
> * src/factor.c (lbuf_putc): Use line buffered mode if the standard
> output (not the standard input) is a terminal in the same way as the
> stdio library.  User programs might use pty only for the standard out
> like the example of Ruby's PTY module:
> https://docs.ruby-lang.org/en/2.6.0/PTY.html#module-PTY-label-Example
> ---
>  src/factor.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/factor.c b/src/factor.c
> index 39e8918ff..173774045 100644
> --- a/src/factor.c
> +++ b/src/factor.c
> @@ -2403,7 +2403,7 @@ lbuf_putc (char c)
>        /* Provide immediate output for interactive input.  */
>        static int line_buffered = -1;
>        if (line_buffered == -1)
> -        line_buffered = isatty (STDIN_FILENO);
> +        line_buffered = isatty (STDOUT_FILENO);
>        if (line_buffered)
>          lbuf_flush ();
>        else if (buffered >= FACTOR_PIPE_BUF)

That would impact use cases like:

  factor | sed -u 's/.*: *//'

Do you have a use case like:

  slow_generator | factor

To support both we could line buffer if either stdin/out is a tty.
To support the following we'd need a flag:

  slow_generator | factor | sed -u 's/.*: *//'

cheers,
Pádraig




This bug report was last modified 6 years and 48 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.