From: Nguyen Thai Ngoc Duy <pclouds@gmail.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: git <git@vger.kernel.org>, Jeff King <peff@peff.net>,
Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCH 8/9] builtin: check pager.<cmd> configuration if RUN_SETUP_GENTLY is used
Date: Tue, 13 Apr 2010 07:29:00 +0200 [thread overview]
Message-ID: <u2ufcaeb9bf1004122229l72de0e55i8dbd993d6cb16d2b@mail.gmail.com> (raw)
In-Reply-To: <20100413023003.GH4118@progeny.tock>
2010/4/13 Jonathan Nieder <jrnieder@gmail.com>:
> Eventually, all git commands should check their configuration at
> start-up. For now, reading configuration before repository discovery
> is dangerous because it could cause a pager.<cmd> setting from the
> current repository to be neglected.
>
> But for commands with RUN_SETUP or RUN_SETUP_GENTLY set, it is safe.
>
> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
> ---
> git.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/git.c b/git.c
> index 20e9bfc..56e93cf 100644
> --- a/git.c
> +++ b/git.c
> @@ -251,7 +251,7 @@ static int run_builtin(struct cmd_struct *p, int argc, const char **argv)
> prefix = setup_git_directory_gently(&nongit_ok);
> }
>
> - if (use_pager == -1 && p->option & RUN_SETUP)
> + if (use_pager == -1 && p->option & (RUN_SETUP | RUN_SETUP_GENTLY))
> use_pager = check_pager_config(p->cmd);
> if (use_pager == -1 && p->option & USE_PAGER)
> use_pager = 1;
This still leaves a chance of going wrong: when user explicitly gives
"--paginate", use_pager will be 1, but commands like "git init" does
not have RUN_SETUP*. So when setup_pager is called later on, it will
mess things up. This could be solved completely (indeed I have a patch
under testing), but it would require unset_git_directory(), making
this series a bit longer :(
--
Duy
next prev parent reply other threads:[~2010-04-13 5:29 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-13 2:11 [PATCH/RFC 0/9] Setup cleanup, chapter one Jonathan Nieder
2010-04-13 2:13 ` [PATCH 1/9] t7006: GIT_DIR/config should be honored in subdirs of toplevel Jonathan Nieder
2010-04-14 20:50 ` Junio C Hamano
2010-04-15 0:38 ` [PATCH] t7006: guard cleanup with test_expect_success Jonathan Nieder
2010-04-15 0:56 ` Junio C Hamano
2010-04-15 1:27 ` Jonathan Nieder
2010-04-13 2:17 ` [PATCH 2/9] t7006: test pager configuration for several git commands Jonathan Nieder
2010-04-13 6:34 ` Johannes Sixt
2010-04-13 22:07 ` Jonathan Nieder
2010-04-14 1:26 ` [PATCH 2/9 v2] " Jonathan Nieder
2010-04-13 2:24 ` [PATCH 3/9] builtins: do not commit pager choice early Jonathan Nieder
2010-04-14 2:17 ` [PATCH 3/9 v2] " Jonathan Nieder
2010-04-13 2:25 ` [PATCH 4/9] t7006: test pager.<cmd> configuration Jonathan Nieder
2010-04-14 2:19 ` [PATCH 4/9 v2] " Jonathan Nieder
2010-04-13 2:27 ` [PATCH 5/9] builtin: introduce startup_info struct Jonathan Nieder
2010-04-13 2:28 ` [PATCH 6/9] builtin: remember whether repository was found Jonathan Nieder
2010-04-13 2:29 ` [PATCH 7/9] builtin: Support RUN_SETUP_GENTLY to set up repository early if found Jonathan Nieder
2010-04-13 2:30 ` [PATCH 8/9] builtin: check pager.<cmd> configuration if RUN_SETUP_GENTLY is used Jonathan Nieder
2010-04-13 5:29 ` Nguyen Thai Ngoc Duy [this message]
2010-04-14 4:38 ` Jonathan Nieder
2010-04-13 10:12 ` Nguyen Thai Ngoc Duy
2010-04-14 5:06 ` Jonathan Nieder
2010-04-15 8:33 ` Nguyen Thai Ngoc Duy
[not found] ` <20100415084925.GA14660@progeny.tock>
2010-04-15 17:43 ` Nguyen Thai Ngoc Duy
2010-04-13 2:31 ` [PATCH 9/9] config: run setup before commiting pager choice Jonathan Nieder
2010-04-14 2:23 ` [PATCH 9/9 v2] " Jonathan Nieder
2010-04-13 3:08 ` [RFC/PATCH 00/46] nd/setup remainder for convenient reference Jonathan Nieder
2010-04-14 7:59 ` Nguyen Thai Ngoc Duy
2010-04-14 20:54 ` [PATCH/RFC 0/9] Setup cleanup, chapter one Junio C Hamano
2010-04-15 0:05 ` Jonathan Nieder
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=u2ufcaeb9bf1004122229l72de0e55i8dbd993d6cb16d2b@mail.gmail.com \
--to=pclouds@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jrnieder@gmail.com \
--cc=peff@peff.net \
/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).