From: Junio C Hamano <gitster@pobox.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: Jeff King <peff@peff.net>,
git@vger.kernel.org, Duy Nguyen <pclouds@gmail.com>
Subject: Re: [PATCH 7/7] setup_git_env: avoid blind fall-back to ".git"
Date: Mon, 21 Nov 2016 19:40:05 -0800 [thread overview]
Message-ID: <xmqq4m30gp2i.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <20161122004421.GA12263@google.com> (Jonathan Nieder's message of "Mon, 21 Nov 2016 16:44:21 -0800")
Jonathan Nieder <jrnieder@gmail.com> writes:
> This trips reproducibly for
>
> git ls-remote https://kernel.googlesource.com/pub/scm/git/git
>
> when run outside of a git repository.
>
> Backtrace:
>
> #0 setup_git_env () at environment.c:172
> #1 get_git_dir () at environment.c:214
> #2 get_helper at transport-helper.c:127
> #3 get_refs_list (for_push=0) at transport-helper.c:1038
> #4 transport_get_remote_refs at transport.c:1076
> #5 cmd_ls_remote at builtin/ls-remote.c:97
>
> transport-helper.c:127 is
>
> argv_array_pushf(&helper->env_array, "%s=%s", GIT_DIR_ENVIRONMENT,
> get_git_dir());
>
> That code is pretty clearly wrong. Should it be made conditional
> on have_git_dir(), like this?
Looks good and I agree with Peff's analysis. Care to wrap it in a
patch with a log message?
Thanks.
>
> Thanks,
> Jonathan
>
> transport-helper.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/transport-helper.c b/transport-helper.c
> index 91aed35..e4fd982 100644
> --- a/transport-helper.c
> +++ b/transport-helper.c
> @@ -124,8 +124,9 @@ static struct child_process *get_helper(struct transport *transport)
> helper->git_cmd = 0;
> helper->silent_exec_failure = 1;
>
> - argv_array_pushf(&helper->env_array, "%s=%s", GIT_DIR_ENVIRONMENT,
> - get_git_dir());
> + if (have_git_dir())
> + argv_array_pushf(&helper->env_array, "%s=%s",
> + GIT_DIR_ENVIRONMENT, get_git_dir());
>
> code = start_command(helper);
> if (code < 0 && errno == ENOENT)
prev parent reply other threads:[~2016-11-22 3:40 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-20 6:15 [PATCH 0/7] stop blind fallback to ".git" Jeff King
2016-10-20 6:16 ` [PATCH 1/7] read info/{attributes,exclude} only when in repository Jeff King
2016-10-25 12:24 ` Duy Nguyen
2016-10-25 14:56 ` Jeff King
2016-10-20 6:16 ` [PATCH 2/7] test-*-cache-tree: setup git dir Jeff King
2016-10-20 6:19 ` [PATCH 3/7] find_unique_abbrev: use 4-buffer ring Jeff King
2016-10-20 6:19 ` [PATCH 4/7] diff_unique_abbrev: rename to diff_aligned_abbrev Jeff King
2016-10-20 6:20 ` [PATCH 5/7] diff_aligned_abbrev: use "struct oid" Jeff King
2016-10-20 6:21 ` [PATCH 6/7] diff: handle sha1 abbreviations outside of repository Jeff King
2016-10-20 6:31 ` Jeff King
2016-10-20 6:24 ` [PATCH 7/7] setup_git_env: avoid blind fall-back to ".git" Jeff King
2016-10-25 12:38 ` Duy Nguyen
2016-10-25 15:15 ` Jeff King
2016-10-26 10:29 ` Duy Nguyen
2016-10-26 12:10 ` Jeff King
2016-10-26 12:26 ` Duy Nguyen
2016-10-26 12:31 ` Jeff King
2016-11-22 0:44 ` Jonathan Nieder
2016-11-22 2:41 ` Jeff King
2016-12-30 0:11 ` [PATCH v2] remote helpers: avoid blind fall-back to ".git" when setting GIT_DIR Jonathan Nieder
2016-12-30 0:37 ` Stefan Beller
2016-12-30 0:49 ` Jeff King
2016-12-30 0:48 ` Jeff King
2017-02-14 6:16 ` Jeff King
2017-02-14 19:08 ` Junio C Hamano
2017-02-14 20:31 ` Jeff King
2017-02-14 20:33 ` [PATCH 1/2] remote: avoid reading $GIT_DIR config in non-repo Jeff King
2017-02-14 20:36 ` [PATCH 2/2] remote helpers: avoid blind fall-back to ".git" when setting GIT_DIR Jeff King
2016-11-22 3:40 ` Junio C Hamano [this message]
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=xmqq4m30gp2i.fsf@gitster.mtv.corp.google.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=jrnieder@gmail.com \
--cc=pclouds@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.