From: Junio C Hamano <gitster@pobox.com>
To: Michael Haggerty <mhagger@alum.mit.edu>
Cc: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
"Stefan Beller" <sbeller@google.com>,
"Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
"David Turner" <novalis@novalis.org>, "Jeff King" <peff@peff.net>,
git@vger.kernel.org
Subject: Re: [PATCH v2 1/9] refs: reorder some function definitions
Date: Fri, 10 Feb 2017 11:14:53 -0800 [thread overview]
Message-ID: <xmqqfujlluxe.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <661ef87844918501e84b43d254305e1997af9b57.1486724698.git.mhagger@alum.mit.edu> (Michael Haggerty's message of "Fri, 10 Feb 2017 12:16:11 +0100")
Michael Haggerty <mhagger@alum.mit.edu> writes:
> This avoids the need to add forward declarations in the next step.
>
> Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
> ---
> refs.c | 64 ++++++++++++++++++++++++++++++++--------------------------------
> 1 file changed, 32 insertions(+), 32 deletions(-)
Makes sense, but the patch itself looks like ... unreadble ;-)
>
> diff --git a/refs.c b/refs.c
> index 9bd0bc1..707092f 100644
> --- a/refs.c
> +++ b/refs.c
> @@ -1358,27 +1358,19 @@ static struct ref_store *main_ref_store;
> /* A linked list of ref_stores for submodules: */
> static struct ref_store *submodule_ref_stores;
>
> -void base_ref_store_init(struct ref_store *refs,
> - const struct ref_storage_be *be,
> - const char *submodule)
> +struct ref_store *lookup_ref_store(const char *submodule)
> {
> - refs->be = be;
> - if (!submodule) {
> - if (main_ref_store)
> - die("BUG: main_ref_store initialized twice");
> + struct ref_store *refs;
>
> - refs->submodule = "";
> - refs->next = NULL;
> - main_ref_store = refs;
> - } else {
> - if (lookup_ref_store(submodule))
> - die("BUG: ref_store for submodule '%s' initialized twice",
> - submodule);
> + if (!submodule || !*submodule)
> + return main_ref_store;
>
> - refs->submodule = xstrdup(submodule);
> - refs->next = submodule_ref_stores;
> - submodule_ref_stores = refs;
> + for (refs = submodule_ref_stores; refs; refs = refs->next) {
> + if (!strcmp(submodule, refs->submodule))
> + return refs;
> }
> +
> + return NULL;
> }
>
> struct ref_store *ref_store_init(const char *submodule)
> @@ -1395,21 +1387,6 @@ struct ref_store *ref_store_init(const char *submodule)
> return be->init(submodule);
> }
>
> -struct ref_store *lookup_ref_store(const char *submodule)
> -{
> - struct ref_store *refs;
> -
> - if (!submodule || !*submodule)
> - return main_ref_store;
> -
> - for (refs = submodule_ref_stores; refs; refs = refs->next) {
> - if (!strcmp(submodule, refs->submodule))
> - return refs;
> - }
> -
> - return NULL;
> -}
> -
> struct ref_store *get_ref_store(const char *submodule)
> {
> struct ref_store *refs;
> @@ -1435,6 +1412,29 @@ struct ref_store *get_ref_store(const char *submodule)
> return refs;
> }
>
> +void base_ref_store_init(struct ref_store *refs,
> + const struct ref_storage_be *be,
> + const char *submodule)
> +{
> + refs->be = be;
> + if (!submodule) {
> + if (main_ref_store)
> + die("BUG: main_ref_store initialized twice");
> +
> + refs->submodule = "";
> + refs->next = NULL;
> + main_ref_store = refs;
> + } else {
> + if (lookup_ref_store(submodule))
> + die("BUG: ref_store for submodule '%s' initialized twice",
> + submodule);
> +
> + refs->submodule = xstrdup(submodule);
> + refs->next = submodule_ref_stores;
> + submodule_ref_stores = refs;
> + }
> +}
> +
> void assert_main_repository(struct ref_store *refs, const char *caller)
> {
> if (*refs->submodule)
next prev parent reply other threads:[~2017-02-10 19:15 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-10 11:16 [PATCH v2 0/9] Store submodules in a hash, not a linked list Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 1/9] refs: reorder some function definitions Michael Haggerty
2017-02-10 19:14 ` Junio C Hamano [this message]
2017-02-10 11:16 ` [PATCH v2 2/9] refs: make some ref_store lookup functions private Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 3/9] refs: remove some unnecessary handling of submodule == "" Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 4/9] register_ref_store(): new function Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 5/9] refs: store submodule ref stores in a hashmap Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 6/9] refs: push the submodule attribute down Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 7/9] base_ref_store_init(): remove submodule argument Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 8/9] files_ref_store::submodule: use NULL for the main repository Michael Haggerty
2017-02-10 11:16 ` [PATCH v2 9/9] read_loose_refs(): read refs using resolve_ref_recursively() Michael Haggerty
2017-02-10 19:22 ` Junio C Hamano
2017-02-13 6:40 ` Michael Haggerty
2017-02-13 23:18 ` Junio C Hamano
2017-02-10 15:56 ` [PATCH v2 0/9] Store submodules in a hash, not a linked list Jeff King
2017-02-10 16:44 ` Stefan Beller
2017-02-10 19:23 ` Junio C Hamano
2017-02-13 3:09 ` David Turner
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=xmqqfujlluxe.fsf@gitster.mtv.corp.google.com \
--to=gitster@pobox.com \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=mhagger@alum.mit.edu \
--cc=novalis@novalis.org \
--cc=pclouds@gmail.com \
--cc=peff@peff.net \
--cc=sbeller@google.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.