From: Junio C Hamano <gitster@pobox.com>
To: Mikael Magnusson <mikachu@gmail.com>
Cc: David Aguilar <davvid@gmail.com>, git <git@vger.kernel.org>,
Adri Farr <14farresa@gmail.com>
Subject: Re: [PATCH] difftool: honor --trust-exit-code for builtin tools
Date: Sun, 16 Nov 2014 10:11:04 -0800 [thread overview]
Message-ID: <xmqq4mtz10ef.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <CAHYJk3Q9tcS+o0hDnDz24ysSKkL6m16OmhyHuj=W88VQjTximw@mail.gmail.com> (Mikael Magnusson's message of "Sun, 16 Nov 2014 02:51:11 +0100")
Mikael Magnusson <mikachu@gmail.com> writes:
>>> diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh
>>> index a40d3df..2b66351 100644
>>> --- a/git-mergetool--lib.sh
>>> +++ b/git-mergetool--lib.sh
>>> @@ -221,6 +221,7 @@ run_merge_tool () {
>>> else
>>> run_diff_cmd "$1"
>>> fi
>>> + status=$?
>>> return $status
>>> }
>>
>> Thanks for a quick turn-around. As a hot-fix for what is already in
>> -rc I am fine with this fix but the patch makes me wonder if $status
>> as a global shell variable has any significance.
>
> $status is an alias for $? in zsh, and so cannot be assigned to. But
> other than that I don't think it holds any meaning and should be fine
> in a .sh script.
That is not what I meant by "global ... significance".
The question was if the codepath in the caller depends on this
setting the global variable here, or nobody looks at and depends on
the global variable we are setting here after this function returns.
It does not have any significance that a random shell implementation
is not POSIX compliant. That would merely mean that such a shell
cannot be used to run POSIX shell scripts like our Porcelain. I
would suspect that zsh has more "posixly correct" mode, with which
it _can_ run POSIX shell scripts, and I would imagine that this
"$status is an alias $?" business is disabled in that mode?
My quick glance across the codepaths in the callers of this funciton
indicated that it should be safe not using this global variable, so
my answer to my original question was "no there is no significance".
I think we can safely remove any mention of status from this shell
function, i.e. if we remove initial assignment to 0, remove this new
assignment and then remove the "return $status" at the end, the
caller would still be happy.
next prev parent reply other threads:[~2014-11-16 18:11 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-14 21:33 [PATCH] difftool: honor --trust-exit-code for builtin tools David Aguilar
2014-11-14 21:51 ` Junio C Hamano
2014-11-14 21:57 ` David Aguilar
2014-11-16 1:51 ` Mikael Magnusson
2014-11-16 2:36 ` David Aguilar
2014-11-16 18:11 ` Junio C Hamano [this message]
2014-11-17 22:15 ` Aaron Schrab
2014-11-16 8:18 ` [PATCH] " Andreas Schwab
-- strict thread matches above, loose matches on Subject: below --
2014-11-15 0:27 David Aguilar
2014-11-15 14:22 ` Adri Farr
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=xmqq4mtz10ef.fsf@gitster.dls.corp.google.com \
--to=gitster@pobox.com \
--cc=14farresa@gmail.com \
--cc=davvid@gmail.com \
--cc=git@vger.kernel.org \
--cc=mikachu@gmail.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 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.