From: Avishay Matayev <me@avishay.dev>
To: git@vger.kernel.org
Cc: code@tpope.net, Avishay Matayev <me@avishay.dev>
Subject: [PATCH 1/3] Change isatty's parameter to a *_FILENO define
Date: Wed, 7 Jul 2021 00:03:16 +0300 [thread overview]
Message-ID: <20210706210317.706313-2-me@avishay.dev> (raw)
In-Reply-To: <20210706210317.706313-1-me@avishay.dev>
This isn't a functional change.
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@avishay.dev>
---
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 +-
| 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) {
/*
--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().
**/
--
2.25.1
next prev parent reply other threads:[~2021-07-06 21:03 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-06 21:03 [PATCH 0/3] Override isatty with GIT_FORCE_TTY Avishay Matayev
2021-07-06 21:03 ` Avishay Matayev [this message]
2021-07-06 21:59 ` [PATCH 1/3] Change isatty's parameter to a *_FILENO define Junio C Hamano
2021-07-09 14:41 ` Avishay Matayev
2021-07-06 21:03 ` [PATCH 2/3] Allow isatty to be overriden with GIT_FORCE_TTY Avishay Matayev
2021-07-06 22:03 ` Junio C Hamano
2021-07-09 14:49 ` Avishay Matayev
2021-07-09 17:21 ` Junio C Hamano
2021-07-09 17:24 ` Avishay Matayev
2021-07-09 18:41 ` Junio C Hamano
2021-07-09 19:56 ` Avishay Matayev
2021-07-06 21:03 ` [PATCH 3/3] Add tests for GIT_FORCE_TTY Avishay Matayev
2021-07-30 12:04 ` [PATCH 0/3] Override isatty with GIT_FORCE_TTY Avishay Matayev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210706210317.706313-2-me@avishay.dev \
--to=me@avishay.dev \
--cc=code@tpope.net \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).