From: Jeff King <peff@peff.net>
To: Junio C Hamano <junio@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 4/4] filter-branch: fix variable export logic
Date: Wed, 14 May 2008 00:57:17 -0400 [thread overview]
Message-ID: <20080514045717.GA16592@sigill.intra.peff.net> (raw)
In-Reply-To: <7v7idxr00i.fsf@gitster.siamese.dyndns.org>
On Tue, May 13, 2008 at 09:18:53PM -0700, Junio C Hamano wrote:
> I was confused by this description ("short-circuit logic"), but I do not
> think there is no short-circuit going on. This is a simple ignorance of
> shell syntax.
Sorry, I meant "you might think we are not going to run this because of
short circuit, but we always will." So I think the original author was
confused.
But please feel free to reword in a way that makes more sense.
> I have a mild suspecion that this was simply an artifcat of a careless
> conversion from export var="$val" form we did in the past. I should have
> caught them back then.
Nope, it was originally that way (46eb449). Thank goodness for
git-blame! :)
> The patch is fine, but I find this easier to read:
>
> +test -z "$ORIG_GIT_DIR" || {
> + GIT_DIR="$ORIG_GIT_DIR" && export GIT_DIR
> +}
> +test -z "$ORIG_GIT_WORK_TREE" || {
> + GIT_WORK_TREE="$ORIG_GIT_WORK_TREE" &&
> + export GIT_WORK_TREE
> +}
> +test -z "$ORIG_GIT_INDEX_FILE" || {
> + GIT_INDEX_FILE="$ORIG_GIT_INDEX_FILE" &&
> + export GIT_INDEX_FILE
> +}
Yes, that is easier to read. Although what also confused me at first was
the double negation. It is trying to say "if the original existed,
restore it", but it is written as "the original has no content, OR
restore it". So
if test -n "$ORIG_GIT_DIR"
then
...
fi
would be even clearer, though I'm not sure if "-n" has any portability
concerns.
-Peff
next prev parent reply other threads:[~2008-05-14 4:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-13 8:43 [PATCH 0/4] freebsd portability fixes Jeff King
2008-05-13 8:44 ` [PATCH 1/4] fix bsd shell negation Jeff King
2008-05-14 2:27 ` Junio C Hamano
2008-05-14 4:01 ` Jeff King
2008-05-13 8:45 ` [PATCH 2/4] t5000: tar portability fix Jeff King
2008-05-13 8:45 ` [PATCH 3/4] clone: bsd shell " Jeff King
2008-05-13 8:46 ` [PATCH 4/4] filter-branch: fix variable export logic Jeff King
2008-05-14 4:18 ` Junio C Hamano
2008-05-14 4:57 ` Jeff King [this message]
2008-05-14 9:33 ` Paolo Bonzini
2008-05-13 9:04 ` [PATCH 0/4] freebsd portability fixes Jeff King
2008-05-13 20:39 ` Alex Riesen
2008-05-13 20:44 ` Alex Riesen
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=20080514045717.GA16592@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=git@vger.kernel.org \
--cc=junio@pobox.com \
/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).