From: Junio C Hamano <gitster@pobox.com>
To: Stefan Beller <sbeller@google.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 1/2] commit: convert lookup_commit_graft to struct object_id
Date: Thu, 13 Jul 2017 11:54:04 -0700 [thread overview]
Message-ID: <xmqq60ewxj5f.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <20170713004415.5051-1-sbeller@google.com> (Stefan Beller's message of "Wed, 12 Jul 2017 17:44:14 -0700")
Stefan Beller <sbeller@google.com> writes:
> With this patch, commit.h doesn't contain the string 'sha1' any more.
;-) Nice.
commit_graft_pos() still thinks we only deal with SHA-1, but that
needs to wait for oid_pos(). The function has only two callers that
do not pass X->oid.hash so it may be a good candidate to convert.
>
> Signed-off-by: Stefan Beller <sbeller@google.com>
> ---
>
> Before diving into the "RFC object store" series further, I want to get
> rid of the final sha1s in {commit,tag}.{c,h}.
>
> commit.c | 6 +++---
> commit.h | 2 +-
> fsck.c | 2 +-
> shallow.c | 4 ++--
> 4 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/commit.c b/commit.c
> index cbfd689939..e0888cf0f7 100644
> --- a/commit.c
> +++ b/commit.c
> @@ -199,11 +199,11 @@ static void prepare_commit_graft(void)
> commit_graft_prepared = 1;
> }
>
> -struct commit_graft *lookup_commit_graft(const unsigned char *sha1)
> +struct commit_graft *lookup_commit_graft(const struct object_id *oid)
> {
> int pos;
> prepare_commit_graft();
> - pos = commit_graft_pos(sha1);
> + pos = commit_graft_pos(oid->hash);
> if (pos < 0)
> return NULL;
> return commit_graft[pos];
> @@ -335,7 +335,7 @@ int parse_commit_buffer(struct commit *item, const void *buffer, unsigned long s
> bufptr += tree_entry_len + 1; /* "tree " + "hex sha1" + "\n" */
> pptr = &item->parents;
>
> - graft = lookup_commit_graft(item->object.oid.hash);
> + graft = lookup_commit_graft(&item->object.oid);
> while (bufptr + parent_entry_len < tail && !memcmp(bufptr, "parent ", 7)) {
> struct commit *new_parent;
>
> diff --git a/commit.h b/commit.h
> index 4127c298cb..6d857f06c1 100644
> --- a/commit.h
> +++ b/commit.h
> @@ -249,7 +249,7 @@ typedef int (*each_commit_graft_fn)(const struct commit_graft *, void *);
>
> struct commit_graft *read_graft_line(char *buf, int len);
> int register_commit_graft(struct commit_graft *, int);
> -struct commit_graft *lookup_commit_graft(const unsigned char *sha1);
> +struct commit_graft *lookup_commit_graft(const struct object_id *oid);
>
> extern struct commit_list *get_merge_bases(struct commit *rev1, struct commit *rev2);
> extern struct commit_list *get_merge_bases_many(struct commit *one, int n, struct commit **twos);
> diff --git a/fsck.c b/fsck.c
> index b4204d772b..2d2d2e9432 100644
> --- a/fsck.c
> +++ b/fsck.c
> @@ -736,7 +736,7 @@ static int fsck_commit_buffer(struct commit *commit, const char *buffer,
> buffer += 41;
> parent_line_count++;
> }
> - graft = lookup_commit_graft(commit->object.oid.hash);
> + graft = lookup_commit_graft(&commit->object.oid);
> parent_count = commit_list_count(commit->parents);
> if (graft) {
> if (graft->nr_parent == -1 && !parent_count)
> diff --git a/shallow.c b/shallow.c
> index 54359d5490..f5591e56da 100644
> --- a/shallow.c
> +++ b/shallow.c
> @@ -107,7 +107,7 @@ struct commit_list *get_shallow_commits(struct object_array *heads, int depth,
> cur_depth++;
> if ((depth != INFINITE_DEPTH && cur_depth >= depth) ||
> (is_repository_shallow() && !commit->parents &&
> - (graft = lookup_commit_graft(commit->object.oid.hash)) != NULL &&
> + (graft = lookup_commit_graft(&commit->object.oid)) != NULL &&
> graft->nr_parent < 0)) {
> commit_list_insert(commit, &result);
> commit->object.flags |= shallow_flag;
> @@ -398,7 +398,7 @@ void prepare_shallow_info(struct shallow_info *info, struct oid_array *sa)
> for (i = 0; i < sa->nr; i++) {
> if (has_object_file(sa->oid + i)) {
> struct commit_graft *graft;
> - graft = lookup_commit_graft(sa->oid[i].hash);
> + graft = lookup_commit_graft(&sa->oid[i]);
> if (graft && graft->nr_parent < 0)
> continue;
> info->ours[info->nr_ours++] = i;
prev parent reply other threads:[~2017-07-13 18:54 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-13 0:44 [PATCH 1/2] commit: convert lookup_commit_graft to struct object_id Stefan Beller
2017-07-13 0:44 ` [PATCH 2/2] tag: convert gpg_verify_tag to use " Stefan Beller
2017-07-13 19:02 ` Junio C Hamano
2017-07-13 20:52 ` Junio C Hamano
2017-07-13 21:00 ` Stefan Beller
2017-07-13 21:23 ` Junio C Hamano
2017-07-13 21:49 ` Stefan Beller
2017-07-13 23:45 ` brian m. carlson
2017-07-13 2:26 ` [PATCH 1/2] commit: convert lookup_commit_graft to " brian m. carlson
2017-07-13 18:54 ` 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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqq60ewxj5f.fsf@gitster.mtv.corp.google.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
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 read-only IMAP folder(s) and NNTP newsgroup(s).