From: Eric Sunshine <sunshine@sunshineco.com>
To: Stefan Beller <sbeller@google.com>
Cc: Junio C Hamano <gitster@pobox.com>,
Heiko Voigt <hvoigt@hvoigt.net>, Git List <git@vger.kernel.org>,
Jens Lehmann <jens.lehmann@web.de>,
Jonathan Nieder <jrnieder@gmail.com>, Jeff King <peff@peff.net>,
"W. Trevor King" <wking@tremily.us>,
Karsten Blees <karsten.blees@gmail.com>
Subject: Re: [PATCH 2/2] cleanup submodule_config a bit.
Date: Wed, 12 Aug 2015 17:13:01 -0400 [thread overview]
Message-ID: <CAPig+cTcWME_U+nYATK7kK0vOSSCjJmGgXmUVmSawBiV5M+02g@mail.gmail.com> (raw)
In-Reply-To: <1439406838-6290-3-git-send-email-sbeller@google.com>
On Wed, Aug 12, 2015 at 3:13 PM, Stefan Beller <sbeller@google.com> wrote:
> In the first hunk, `submodule` is NULL all the time, so we can make it clearer
> by directly returning NULL.
>
> In the second hunk, we can directly return the lookup values as it also makes
> the coder clearer.
>
> Signed-off-by: Stefan Beller <sbeller@google.com>
> ---
> submodule-config.c | 12 +++++-------
> 1 file changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/submodule-config.c b/submodule-config.c
> index 199692b..08e93cc 100644
> --- a/submodule-config.c
> +++ b/submodule-config.c
> @@ -387,7 +387,7 @@ static const struct submodule *config_from(struct submodule_cache *cache,
> }
>
> if (!gitmodule_sha1_from_commit(commit_sha1, sha1))
> - return submodule;
> + return NULL;
There are a couple other places which return 'submodule' when it is
known to be NULL. One could rightly expect that they deserve the same
treatment, otherwise, the code becomes more confusing since it's not
obvious why 'return NULL' is used some places but not others.
> switch (lookup_type) {
> case lookup_name:
> @@ -420,14 +420,12 @@ static const struct submodule *config_from(struct submodule_cache *cache,
>
> switch (lookup_type) {
> case lookup_name:
> - submodule = cache_lookup_name(cache, sha1, key);
> - break;
> + return cache_lookup_name(cache, sha1, key);
> case lookup_path:
> - submodule = cache_lookup_path(cache, sha1, key);
> - break;
> + return cache_lookup_path(cache, sha1, key);
> + default:
> + return NULL;
> }
> -
> - return submodule;
Earlier in the function, there's effectively a clone of this logic to
which you could apply the same transformation. Changing it here, while
ignoring the clone, makes the code more confusing (or at least
inconsistent) rather than less.
> }
>
> static const struct submodule *config_from_path(struct submodule_cache *cache,
> --
> 2.5.0.234.gefc8a62
next prev parent reply other threads:[~2015-08-12 21:13 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-12 19:13 [PATCH v5 0/4] submodule config lookup API Stefan Beller
2015-08-12 19:13 ` [PATCH 1/2] Fixup hv/documentation Stefan Beller
2015-08-12 19:13 ` [PATCH 2/2] cleanup submodule_config a bit Stefan Beller
2015-08-12 21:13 ` Eric Sunshine [this message]
2015-08-12 21:34 ` Stefan Beller
2015-08-12 22:01 ` Eric Sunshine
2015-08-12 19:27 ` [PATCH v5 0/4] submodule config lookup API Junio C Hamano
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=CAPig+cTcWME_U+nYATK7kK0vOSSCjJmGgXmUVmSawBiV5M+02g@mail.gmail.com \
--to=sunshine@sunshineco.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=hvoigt@hvoigt.net \
--cc=jens.lehmann@web.de \
--cc=jrnieder@gmail.com \
--cc=karsten.blees@gmail.com \
--cc=peff@peff.net \
--cc=sbeller@google.com \
--cc=wking@tremily.us \
/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).