1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-05-09 03:16:13 +02:00

commit: add repository argument to lookup_commit_graft

Add a repository argument to allow callers of lookup_commit_graft to
be more specific about which repository to handle. This is a small
mechanical change; it doesn't change the implementation to handle
repositories other than the_repository yet.

As with the previous commits, use a macro to catch callers passing a
repository other than the_repository at compile time.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Stefan Beller <sbeller@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jonathan Nieder 2018-05-17 15:51:42 -07:00 committed by Junio C Hamano
parent 3ee37656ee
commit 1f93ecd1ab
4 changed files with 8 additions and 6 deletions

View File

@ -212,7 +212,7 @@ static void prepare_commit_graft_the_repository(void)
commit_graft_prepared = 1;
}
struct commit_graft *lookup_commit_graft(const struct object_id *oid)
struct commit_graft *lookup_commit_graft_the_repository(const struct object_id *oid)
{
int pos;
prepare_commit_graft(the_repository);
@ -359,7 +359,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);
graft = lookup_commit_graft(the_repository, &item->object.oid);
while (bufptr + parent_entry_len < tail && !memcmp(bufptr, "parent ", 7)) {
struct commit *new_parent;

View File

@ -176,7 +176,8 @@ typedef int (*each_commit_graft_fn)(const struct commit_graft *, void *);
struct commit_graft *read_graft_line(struct strbuf *line);
#define register_commit_graft(r, g, i) register_commit_graft_##r(g, i)
int register_commit_graft_the_repository(struct commit_graft *, int);
struct commit_graft *lookup_commit_graft(const struct object_id *oid);
#define lookup_commit_graft(r, o) lookup_commit_graft_##r(o)
struct commit_graft *lookup_commit_graft_the_repository(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);

2
fsck.c
View File

@ -738,7 +738,7 @@ static int fsck_commit_buffer(struct commit *commit, const char *buffer,
buffer += 41;
parent_line_count++;
}
graft = lookup_commit_graft(&commit->object.oid);
graft = lookup_commit_graft(the_repository, &commit->object.oid);
parent_count = commit_list_count(commit->parents);
if (graft) {
if (graft->nr_parent == -1 && !parent_count)

View File

@ -109,7 +109,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)) != NULL &&
(graft = lookup_commit_graft(the_repository, &commit->object.oid)) != NULL &&
graft->nr_parent < 0)) {
commit_list_insert(commit, &result);
commit->object.flags |= shallow_flag;
@ -398,7 +398,8 @@ 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]);
graft = lookup_commit_graft(the_repository,
&sa->oid[i]);
if (graft && graft->nr_parent < 0)
continue;
info->ours[info->nr_ours++] = i;