On Wed, 7 Jul 2021 at 00:59, Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Avishay Matayev <me@xxxxxxxxxxx> writes: > > > This isn't a functional change. > > This does not seem to make the code any easier to follow, though. > Is this amount of code churn really needed? > I don't think it makes the code worse either. There are already a few occurrences of this in the current code, I found this nicer and thought I should create a patch for consistency's sake. It is of course not mandatory so if you feel strongly about it I can remove it. > > > > The next patch in this series will rename all isatty calls anyway so I > > figured it is a good time to change the same calls to consistently use > > STD[IN|OUT|ERR]_FILENO. > > > > Signed-off-by: Avishay Matayev <me@xxxxxxxxxxx> > > --- > > builtin/am.c | 2 +- > > builtin/bisect--helper.c | 2 +- > > builtin/blame.c | 2 +- > > builtin/checkout.c | 2 +- > > builtin/commit-graph.c | 4 ++-- > > builtin/commit.c | 2 +- > > builtin/fsck.c | 2 +- > > builtin/gc.c | 2 +- > > builtin/log.c | 2 +- > > builtin/merge.c | 4 ++-- > > builtin/multi-pack-index.c | 2 +- > > builtin/pack-objects.c | 2 +- > > builtin/pack-redundant.c | 2 +- > > builtin/prune-packed.c | 2 +- > > builtin/prune.c | 2 +- > > builtin/rebase.c | 2 +- > > builtin/repack.c | 2 +- > > builtin/send-pack.c | 2 +- > > builtin/shortlog.c | 4 ++-- > > builtin/sparse-checkout.c | 2 +- > > builtin/unpack-objects.c | 2 +- > > column.c | 2 +- > > date.c | 2 +- > > editor.c | 2 +- > > pager.c | 4 ++-- > > preload-index.c | 2 +- > > read-cache.c | 2 +- > > remote-curl.c | 2 +- > > sequencer.c | 4 ++-- > > sideband.c | 2 +- > > transport.c | 6 +++--- > > transport.h | 2 +- > > 32 files changed, 39 insertions(+), 39 deletions(-) > > > > diff --git a/builtin/am.c b/builtin/am.c > > index 0b2d886c81..2230c3e94d 100644 > > --- a/builtin/am.c > > +++ b/builtin/am.c > > @@ -2394,7 +2394,7 @@ int cmd_am(int argc, const char **argv, const char *prefix) > > * intend to feed us a patch but wanted to continue > > * unattended. > > */ > > - if (argc || (resume.mode == RESUME_FALSE && !isatty(0))) > > + if (argc || (resume.mode == RESUME_FALSE && !isatty(STDIN_FILENO))) > > die(_("previous rebase directory %s still exists but mbox given."), > > state.dir); > > > > diff --git a/builtin/bisect--helper.c b/builtin/bisect--helper.c > > index 9d9540a0ab..5d42c75a46 100644 > > --- a/builtin/bisect--helper.c > > +++ b/builtin/bisect--helper.c > > @@ -346,7 +346,7 @@ static int decide_next(const struct bisect_terms *terms, > > * although this is less optimum. > > */ > > warning(_("bisecting only with a %s commit"), terms->term_bad); > > - if (!isatty(0)) > > + if (!isatty(STDIN_FILENO)) > > return 0; > > /* > > * TRANSLATORS: Make sure to include [Y] and [n] in your > > diff --git a/builtin/blame.c b/builtin/blame.c > > index 641523ff9a..1b674b2f52 100644 > > --- a/builtin/blame.c > > +++ b/builtin/blame.c > > @@ -945,7 +945,7 @@ int cmd_blame(int argc, const char **argv, const char *prefix) > > die(_("--progress can't be used with --incremental or porcelain formats")); > > show_progress = 0; > > } else if (show_progress < 0) > > - show_progress = isatty(2); > > + show_progress = isatty(STDERR_FILENO); > > > > if (0 < abbrev && abbrev < hexsz) > > /* one more abbrev length is needed for the boundary commit */ > > diff --git a/builtin/checkout.c b/builtin/checkout.c > > index f4cd7747d3..e3bd31449b 100644 > > --- a/builtin/checkout.c > > +++ b/builtin/checkout.c > > @@ -1607,7 +1607,7 @@ static int checkout_main(int argc, const char **argv, const char *prefix, > > if (opts->quiet) > > opts->show_progress = 0; > > else > > - opts->show_progress = isatty(2); > > + opts->show_progress = isatty(STDERR_FILENO); > > } > > > > if (opts->conflict_style) { > > diff --git a/builtin/commit-graph.c b/builtin/commit-graph.c > > index cd86315221..461f1a2a65 100644 > > --- a/builtin/commit-graph.c > > +++ b/builtin/commit-graph.c > > @@ -87,7 +87,7 @@ static int graph_verify(int argc, const char **argv) > > > > trace2_cmd_mode("verify"); > > > > - opts.progress = isatty(2); > > + opts.progress = isatty(STDERR_FILENO); > > argc = parse_options(argc, argv, NULL, > > builtin_commit_graph_verify_options, > > builtin_commit_graph_verify_usage, 0); > > @@ -236,7 +236,7 @@ static int graph_write(int argc, const char **argv) > > OPT_END(), > > }; > > > > - opts.progress = isatty(2); > > + opts.progress = isatty(STDERR_FILENO); > > opts.enable_changed_paths = -1; > > write_opts.size_multiple = 2; > > write_opts.max_commits = 0; > > diff --git a/builtin/commit.c b/builtin/commit.c > > index 190d215d43..d364ce6a39 100644 > > --- a/builtin/commit.c > > +++ b/builtin/commit.c > > @@ -754,7 +754,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix, > > strbuf_addbuf(&sb, &message); > > hook_arg1 = "message"; > > } else if (logfile && !strcmp(logfile, "-")) { > > - if (isatty(0)) > > + if (isatty(STDIN_FILENO)) > > fprintf(stderr, _("(reading log message from standard input)\n")); > > if (strbuf_read(&sb, 0, 0) < 0) > > die_errno(_("could not read log from standard input")); > > diff --git a/builtin/fsck.c b/builtin/fsck.c > > index b42b6fe21f..4e65c823e4 100644 > > --- a/builtin/fsck.c > > +++ b/builtin/fsck.c > > @@ -790,7 +790,7 @@ int cmd_fsck(int argc, const char **argv, const char *prefix) > > fsck_obj_options.strict = 1; > > > > if (show_progress == -1) > > - show_progress = isatty(2); > > + show_progress = isatty(STDERR_FILENO); > > if (verbose) > > show_progress = 0; > > > > diff --git a/builtin/gc.c b/builtin/gc.c > > index f05d2f0a1a..4566754427 100644 > > --- a/builtin/gc.c > > +++ b/builtin/gc.c > > @@ -1425,7 +1425,7 @@ static int maintenance_run(int argc, const char **argv, const char *prefix) > > }; > > memset(&opts, 0, sizeof(opts)); > > > > - opts.quiet = !isatty(2); > > + opts.quiet = !isatty(STDERR_FILENO); > > > > for (i = 0; i < TASK__COUNT; i++) > > tasks[i].selected_order = -1; > > diff --git a/builtin/log.c b/builtin/log.c > > index 6102893fcc..5bb9f4194a 100644 > > --- a/builtin/log.c > > +++ b/builtin/log.c > > @@ -69,7 +69,7 @@ struct line_opt_callback_data { > > > > static int session_is_interactive(void) > > { > > - return isatty(1) || pager_in_use(); > > + return isatty(STDOUT_FILENO) || pager_in_use(); > > } > > > > static int auto_decoration_style(void) > > diff --git a/builtin/merge.c b/builtin/merge.c > > index a8a843b1f5..88f53c03b5 100644 > > --- a/builtin/merge.c > > +++ b/builtin/merge.c > > @@ -734,7 +734,7 @@ static int try_merge_strategy(const char *strategy, struct commit_list *common, > > o.subtree_shift = ""; > > > > o.show_rename_progress = > > - show_progress == -1 ? isatty(2) : show_progress; > > + show_progress == -1 ? isatty(STDERR_FILENO) : show_progress; > > > > for (x = 0; x < xopts_nr; x++) > > if (parse_merge_opt(&o, xopts[x])) > > @@ -1073,7 +1073,7 @@ static int default_edit_option(void) > > /* Use editor if stdin and stdout are the same and is a tty */ > > return (!fstat(0, &st_stdin) && > > !fstat(1, &st_stdout) && > > - isatty(0) && isatty(1) && > > + isatty(STDIN_FILENO) && isatty(STDOUT_FILENO) && > > st_stdin.st_dev == st_stdout.st_dev && > > st_stdin.st_ino == st_stdout.st_ino && > > st_stdin.st_mode == st_stdout.st_mode); > > diff --git a/builtin/multi-pack-index.c b/builtin/multi-pack-index.c > > index 5d3ea445fd..8e329b8b22 100644 > > --- a/builtin/multi-pack-index.c > > +++ b/builtin/multi-pack-index.c > > @@ -154,7 +154,7 @@ int cmd_multi_pack_index(int argc, const char **argv, > > > > git_config(git_default_config, NULL); > > > > - if (isatty(2)) > > + if (isatty(STDERR_FILENO)) > > opts.flags |= MIDX_PROGRESS; > > argc = parse_options(argc, argv, prefix, > > builtin_multi_pack_index_options, > > diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c > > index de00adbb9e..74536fa5a4 100644 > > --- a/builtin/pack-objects.c > > +++ b/builtin/pack-objects.c > > @@ -4016,7 +4016,7 @@ int cmd_pack_objects(int argc, const char **argv, const char *prefix) > > if (git_env_bool(GIT_TEST_WRITE_REV_INDEX, 0)) > > pack_idx_opts.flags |= WRITE_REV; > > > > - progress = isatty(2); > > + progress = isatty(STDERR_FILENO); > > argc = parse_options(argc, argv, prefix, pack_objects_options, > > pack_usage, 0); > > > > diff --git a/builtin/pack-redundant.c b/builtin/pack-redundant.c > > index 8bf5c0acad..acf1edba3a 100644 > > --- a/builtin/pack-redundant.c > > +++ b/builtin/pack-redundant.c > > @@ -621,7 +621,7 @@ int cmd_pack_redundant(int argc, const char **argv, const char *prefix) > > > > /* ignore objects given on stdin */ > > llist_init(&ignore); > > - if (!isatty(0)) { > > + if (!isatty(STDIN_FILENO)) { > > while (fgets(buf, sizeof(buf), stdin)) { > > oid = xmalloc(sizeof(*oid)); > > if (get_oid_hex(buf, oid)) > > diff --git a/builtin/prune-packed.c b/builtin/prune-packed.c > > index b7b9281a8c..5d476316a5 100644 > > --- a/builtin/prune-packed.c > > +++ b/builtin/prune-packed.c > > @@ -9,7 +9,7 @@ static const char * const prune_packed_usage[] = { > > > > int cmd_prune_packed(int argc, const char **argv, const char *prefix) > > { > > - int opts = isatty(2) ? PRUNE_PACKED_VERBOSE : 0; > > + int opts = isatty(STDERR_FILENO) ? PRUNE_PACKED_VERBOSE : 0; > > const struct option prune_packed_options[] = { > > OPT_BIT('n', "dry-run", &opts, N_("dry run"), > > PRUNE_PACKED_DRY_RUN), > > diff --git a/builtin/prune.c b/builtin/prune.c > > index 02c6ab7cba..36b9fed1bf 100644 > > --- a/builtin/prune.c > > +++ b/builtin/prune.c > > @@ -165,7 +165,7 @@ int cmd_prune(int argc, const char **argv, const char *prefix) > > } > > > > if (show_progress == -1) > > - show_progress = isatty(2); > > + show_progress = isatty(STDERR_FILENO); > > if (exclude_promisor_objects) { > > fetch_if_missing = 0; > > revs.exclude_promisor_objects = 1; > > diff --git a/builtin/rebase.c b/builtin/rebase.c > > index 12f093121d..97e8c8cbf8 100644 > > --- a/builtin/rebase.c > > +++ b/builtin/rebase.c > > @@ -1745,7 +1745,7 @@ int cmd_rebase(int argc, const char **argv, const char *prefix) > > if (options.root && !options.onto_name) > > imply_merge(&options, "--root without --onto"); > > > > - if (isatty(2) && options.flags & REBASE_NO_QUIET) > > + if (isatty(STDERR_FILENO) && options.flags & REBASE_NO_QUIET) > > strbuf_addstr(&options.git_format_patch_opt, " --progress"); > > > > if (options.git_am_opts.nr || options.type == REBASE_APPLY) { > > diff --git a/builtin/repack.c b/builtin/repack.c > > index 5f9bc74adc..4eb21e8e98 100644 > > --- a/builtin/repack.c > > +++ b/builtin/repack.c > > @@ -710,7 +710,7 @@ int cmd_repack(int argc, const char **argv, const char *prefix) > > } > > strbuf_release(&buf); > > } > > - if (!po_args.quiet && isatty(2)) > > + if (!po_args.quiet && isatty(STDERR_FILENO)) > > opts |= PRUNE_PACKED_VERBOSE; > > prune_packed_objects(opts); > > > > diff --git a/builtin/send-pack.c b/builtin/send-pack.c > > index a7e01667b0..c168c03a26 100644 > > --- a/builtin/send-pack.c > > +++ b/builtin/send-pack.c > > @@ -261,7 +261,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix) > > } > > > > if (progress == -1) > > - progress = !args.quiet && isatty(2); > > + progress = !args.quiet && isatty(STDERR_FILENO); > > args.progress = progress; > > > > if (args.stateless_rpc) { > > diff --git a/builtin/shortlog.c b/builtin/shortlog.c > > index 3e7ab1ca82..a3612e3f72 100644 > > --- a/builtin/shortlog.c > > +++ b/builtin/shortlog.c > > @@ -406,10 +406,10 @@ int cmd_shortlog(int argc, const char **argv, const char *prefix) > > string_list_sort(&log.trailers); > > > > /* assume HEAD if from a tty */ > > - if (!nongit && !rev.pending.nr && isatty(0)) > > + if (!nongit && !rev.pending.nr && isatty(STDIN_FILENO)) > > add_head_to_pending(&rev); > > if (rev.pending.nr == 0) { > > - if (isatty(0)) > > + if (isatty(STDIN_FILENO)) > > fprintf(stderr, _("(reading log message from standard input)\n")); > > read_from_stdin(&log); > > } > > diff --git a/builtin/sparse-checkout.c b/builtin/sparse-checkout.c > > index a4bdd7c494..63e79c7520 100644 > > --- a/builtin/sparse-checkout.c > > +++ b/builtin/sparse-checkout.c > > @@ -114,7 +114,7 @@ static int update_working_directory(struct pattern_list *pl) > > r->index->sparse_checkout_patterns = pl; > > > > memset(&o, 0, sizeof(o)); > > - o.verbose_update = isatty(2); > > + o.verbose_update = isatty(STDERR_FILENO); > > o.update = 1; > > o.head_idx = -1; > > o.src_index = r->index; > > diff --git a/builtin/unpack-objects.c b/builtin/unpack-objects.c > > index 4a9466295b..1a86e2e606 100644 > > --- a/builtin/unpack-objects.c > > +++ b/builtin/unpack-objects.c > > @@ -522,7 +522,7 @@ int cmd_unpack_objects(int argc, const char **argv, const char *prefix) > > > > git_config(git_default_config, NULL); > > > > - quiet = !isatty(2); > > + quiet = !isatty(STDERR_FILENO); > > > > for (i = 1 ; i < argc; i++) { > > const char *arg = argv[i]; > > diff --git a/column.c b/column.c > > index 1261e18a72..375869e848 100644 > > --- a/column.c > > +++ b/column.c > > @@ -211,7 +211,7 @@ int finalize_colopts(unsigned int *colopts, int stdout_is_tty) > > { > > if ((*colopts & COL_ENABLE_MASK) == COL_AUTO) { > > if (stdout_is_tty < 0) > > - stdout_is_tty = isatty(1); > > + stdout_is_tty = isatty(STDOUT_FILENO); > > *colopts &= ~COL_ENABLE_MASK; > > if (stdout_is_tty || pager_in_use()) > > *colopts |= COL_ENABLED; > > diff --git a/date.c b/date.c > > index f9ea807b3a..6dd6c37c22 100644 > > --- a/date.c > > +++ b/date.c > > @@ -969,7 +969,7 @@ void parse_date_format(const char *format, struct date_mode *mode) > > > > /* "auto:foo" is "if tty/pager, then foo, otherwise normal" */ > > if (skip_prefix(format, "auto:", &p)) { > > - if (isatty(1) || pager_in_use()) > > + if (isatty(STDOUT_FILENO) || pager_in_use()) > > format = p; > > else > > format = "default"; > > diff --git a/editor.c b/editor.c > > index 6303ae0ab0..13521f05cf 100644 > > --- a/editor.c > > +++ b/editor.c > > @@ -58,7 +58,7 @@ static int launch_specified_editor(const char *editor, const char *path, > > const char *args[] = { editor, NULL, NULL }; > > struct child_process p = CHILD_PROCESS_INIT; > > int ret, sig; > > - int print_waiting_for_editor = advice_waiting_for_editor && isatty(2); > > + int print_waiting_for_editor = advice_waiting_for_editor && isatty(STDERR_FILENO); > > > > if (print_waiting_for_editor) { > > /* > > diff --git a/pager.c b/pager.c > > index 3d37dd7ada..3c4664ebed 100644 > > --- a/pager.c > > +++ b/pager.c > > @@ -101,7 +101,7 @@ void prepare_pager_args(struct child_process *pager_process, const char *pager) > > > > void setup_pager(void) > > { > > - const char *pager = git_pager(isatty(1)); > > + const char *pager = git_pager(isatty(STDOUT_FILENO)); > > > > if (!pager) > > return; > > @@ -128,7 +128,7 @@ void setup_pager(void) > > > > /* original process continues, but writes to the pipe */ > > dup2(pager_process.in, 1); > > - if (isatty(2)) > > + if (isatty(STDERR_FILENO)) > > dup2(pager_process.in, 2); > > close(pager_process.in); > > > > diff --git a/preload-index.c b/preload-index.c > > index e5529a5863..28707d9bee 100644 > > --- a/preload-index.c > > +++ b/preload-index.c > > @@ -121,7 +121,7 @@ void preload_index(struct index_state *index, > > memset(&data, 0, sizeof(data)); > > > > memset(&pd, 0, sizeof(pd)); > > - if (refresh_flags & REFRESH_PROGRESS && isatty(2)) { > > + if (refresh_flags & REFRESH_PROGRESS && isatty(STDERR_FILENO)) { > > pd.progress = start_delayed_progress(_("Refreshing index"), index->cache_nr); > > pthread_mutex_init(&pd.mutex, NULL); > > } > > diff --git a/read-cache.c b/read-cache.c > > index 77961a3885..a8063fefe6 100644 > > --- a/read-cache.c > > +++ b/read-cache.c > > @@ -1568,7 +1568,7 @@ int refresh_index(struct index_state *istate, unsigned int flags, > > int t2_sum_lstat = 0; > > int t2_sum_scan = 0; > > > > - if (flags & REFRESH_PROGRESS && isatty(2)) > > + if (flags & REFRESH_PROGRESS && isatty(STDERR_FILENO)) > > progress = start_delayed_progress(_("Refresh index"), > > istate->cache_nr); > > > > diff --git a/remote-curl.c b/remote-curl.c > > index 9d432c299a..843a287680 100644 > > --- a/remote-curl.c > > +++ b/remote-curl.c > > @@ -1483,7 +1483,7 @@ int cmd_main(int argc, const char **argv) > > } > > > > options.verbosity = 1; > > - options.progress = !!isatty(2); > > + options.progress = !!isatty(STDERR_FILENO); > > options.thin = 1; > > string_list_init(&options.deepen_not, 1); > > string_list_init(&options.push_options, 1); > > diff --git a/sequencer.c b/sequencer.c > > index 0bec01cf38..d1311eecc1 100644 > > --- a/sequencer.c > > +++ b/sequencer.c > > @@ -2040,7 +2040,7 @@ static int should_edit(struct replay_opts *opts) { > > * commits; continue_single_pick() handles the conflicted > > * commits itself instead of calling this function. > > */ > > - return (opts->action == REPLAY_REVERT && isatty(0)) ? 1 : 0; > > + return (opts->action == REPLAY_REVERT && isatty(STDIN_FILENO)) ? 1 : 0; > > return opts->edit; > > } > > > > @@ -4589,7 +4589,7 @@ static int continue_single_pick(struct repository *r, struct replay_opts *opts) > > * we want to edit if the user asked for it, or if they didn't specify > > * and stdin is a tty. > > */ > > - if (!opts->edit || (opts->edit < 0 && !isatty(0))) > > + if (!opts->edit || (opts->edit < 0 && !isatty(STDIN_FILENO))) > > /* > > * Include --cleanup=strip as well because we don't want the > > * "# Conflicts:" messages. > > diff --git a/sideband.c b/sideband.c > > index 6f9e026732..a5dcb971f5 100644 > > --- a/sideband.c > > +++ b/sideband.c > > @@ -126,7 +126,7 @@ int demultiplex_sideband(const char *me, int status, > > int band; > > > > if (!suffix) { > > - if (isatty(2) && !is_terminal_dumb()) > > + if (isatty(STDERR_FILENO) && !is_terminal_dumb()) > > suffix = ANSI_SUFFIX; > > else > > suffix = DUMB_SUFFIX; > > diff --git a/transport.c b/transport.c > > index 50f5830eb6..ab8f297afa 100644 > > --- a/transport.c > > +++ b/transport.c > > @@ -1051,7 +1051,7 @@ struct transport *transport_get(struct remote *remote, const char *url) > > const char *helper; > > struct transport *ret = xcalloc(1, sizeof(*ret)); > > > > - ret->progress = isatty(2); > > + ret->progress = isatty(STDERR_FILENO); > > string_list_init(&ret->pack_lockfiles, 1); > > > > if (!remote) > > @@ -1168,12 +1168,12 @@ void transport_set_verbosity(struct transport *transport, int verbosity, > > * . Report progress, if force_progress is 1 (ie. --progress). > > * . Don't report progress, if force_progress is 0 (ie. --no-progress). > > * . Don't report progress, if verbosity < 0 (ie. -q/--quiet ). > > - * . Report progress if isatty(2) is 1. > > + * . Report progress if isatty(STDERR_FILENO) is 1. > > **/ > > if (force_progress >= 0) > > transport->progress = !!force_progress; > > else > > - transport->progress = verbosity >= 0 && isatty(2); > > + transport->progress = verbosity >= 0 && isatty(STDERR_FILENO); > > } > > > > static void die_with_unpushed_submodules(struct string_list *needs_pushing) > > diff --git a/transport.h b/transport.h > > index 1cbab11373..4630d42755 100644 > > --- a/transport.h > > +++ b/transport.h > > @@ -110,7 +110,7 @@ struct transport { > > signed verbose : 3; > > /** > > * Transports should not set this directly, and should use this > > - * value without having to check isatty(2), -q/--quiet > > + * value without having to check isatty(STDERR_FILENO), -q/--quiet > > * (transport->verbose < 0), etc. - checking has already been done > > * in transport_set_verbosity(). > > **/