git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v7 7/7] various *.c: use isatty(0|2), not isatty(STDIN_FILENO|STDERR_FILENO)

From
Johannes Altmanninger <aclopte@gmail.com>
Date
Dec 27, 2021, 01:17 UTC
Message-ID
<20211227011736.jea5qvn3mffusxnc@gmail.com>
In-Reply-To
<patch-v7-7.7-0670d1aa5f2-20211217T041945Z-avarab@gmail.com>

nit: I'd maybe drop the "various *.c: " subject prefix. It's already implied that the change is across the entire tree.

On Fri, Dec 17, 2021 at 05:25:02AM +0100, Ævar Arnfjörð Bjarmason wrote:
> We have over 50 uses of "isatty(1)" and "isatty(2)" in the codebase,
> and around 10 "isatty(0)", but these used the

nit: ambiguous pronouns like "these" here can trip up the reader for a second. Maybe "three places" is clearer.

Show 7 quoted lines
> {STDIN_FILENO,STD{OUT,ERR}_FILENO} macros in "stdlib.h" to refer to
> them.
> 
> Let's change these for consistency, and because another commit that
> would like to be based on top of this one[1] has a recipe to change
> all of these for ad-hoc testing, not needing to match these with that
> ad-hoc regex will make things easier to explain.

this sentence is quite long, and it also doesn't help that "these" refers to something other than it did in the previous sentence. Here's my attempt:

	Let's change these for consistency.  This makes it easier to change all
	calls to isatty() at a whim, which is useful to test some scenarios[1].
Show 55 quoted lines
> Only one of these is
> related to the "struct progress" code which it discusses, but let's
> change all of these while we're at it.
> 
> 1. https://lore.kernel.org/git/patch-v6-8.8-bff919994b5-20211102T122507Z-avarab@gmail.com/
> 
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---
>  builtin/bisect--helper.c | 2 +-
>  builtin/bundle.c         | 2 +-
>  compat/mingw.c           | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/builtin/bisect--helper.c b/builtin/bisect--helper.c
> index 28a2e6a5750..21360a4e70b 100644
> --- a/builtin/bisect--helper.c
> +++ b/builtin/bisect--helper.c
> @@ -830,7 +830,7 @@ static int bisect_autostart(struct bisect_terms *terms)
>  	fprintf_ln(stderr, _("You need to start by \"git bisect "
>  			  "start\"\n"));
>  
> -	if (!isatty(STDIN_FILENO))
> +	if (!isatty(0))
>  		return -1;
>  
>  	/*
> diff --git a/builtin/bundle.c b/builtin/bundle.c
> index 5a85d7cd0fe..df69c651753 100644
> --- a/builtin/bundle.c
> +++ b/builtin/bundle.c
> @@ -56,7 +56,7 @@ static int parse_options_cmd_bundle(int argc,
>  
>  static int cmd_bundle_create(int argc, const char **argv, const char *prefix) {
>  	int all_progress_implied = 0;
> -	int progress = isatty(STDERR_FILENO);
> +	int progress = isatty(2);
>  	struct strvec pack_opts;
>  	int version = -1;
>  	int ret;
> diff --git a/compat/mingw.c b/compat/mingw.c
> index e14f2d5f77c..7c55d0f0414 100644
> --- a/compat/mingw.c
> +++ b/compat/mingw.c
> @@ -2376,7 +2376,7 @@ int mingw_raise(int sig)
>  	switch (sig) {
>  	case SIGALRM:
>  		if (timer_fn == SIG_DFL) {
> -			if (isatty(STDERR_FILENO))
> +			if (isatty(2))
>  				fputs("Alarm clock\n", stderr);
>  			exit(128 + SIGALRM);
>  		} else if (timer_fn != SIG_IGN)
> -- 
> 2.34.1.1119.g7a3fc8778ee
> 
Previous: Ævar Arnfjörð Bjarmason
Message 16 of 16 in “progress: test fixes / cleanup”
  1. 0/7 progress: test fixes / cleanupÆvar Arnfjörð Bjarmason, Dec 17, 2021
  2. 1/7 leak tests: fix a memory leaks in "test-progress" helperÆvar Arnfjörð Bjarmason, Dec 17, 2021
  3. Johannes AltmanningerDec 27, 2021
  4. 2/7 progress.c test helper: add missing bracesÆvar Arnfjörð Bjarmason, Dec 17, 2021
  5. 3/7 progress.c tests: make start/stop commands on stdinÆvar Arnfjörð Bjarmason, Dec 17, 2021
  6. Johannes AltmanningerDec 27, 2021
  7. Ævar Arnfjörð BjarmasonDec 27, 2021
  8. 5/7 progress.c: add temporary variable from progress structÆvar Arnfjörð Bjarmason, Dec 17, 2021
  9. Johannes AltmanningerDec 27, 2021
  10. 4/7 progress.c tests: test some invalid usageÆvar Arnfjörð Bjarmason, Dec 17, 2021
  11. Johannes AltmanningerDec 27, 2021
  12. Junio C HamanoJan 3, 2022
  13. 6/7 pack-bitmap-write.c: don't return without stop_progress()Ævar Arnfjörð Bjarmason, Dec 17, 2021
  14. Johannes AltmanningerDec 27, 2021
  15. 7/7 various *.c: use isatty(0|2), not isatty(STDIN_FILENO|STDERR_FILENO)Ævar Arnfjörð Bjarmason, Dec 17, 2021
  16. Johannes AltmanningerDec 27, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.