GNU bug report logs -
#35046
[PATCH] factor: check the standard output instead of the standard input
Previous Next
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):
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.