git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

  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).