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:
parent
3ee37656ee
commit
1f93ecd1ab
4
commit.c
4
commit.c
@ -212,7 +212,7 @@ static void prepare_commit_graft_the_repository(void)
|
|||||||
commit_graft_prepared = 1;
|
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;
|
int pos;
|
||||||
prepare_commit_graft(the_repository);
|
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" */
|
bufptr += tree_entry_len + 1; /* "tree " + "hex sha1" + "\n" */
|
||||||
pptr = &item->parents;
|
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)) {
|
while (bufptr + parent_entry_len < tail && !memcmp(bufptr, "parent ", 7)) {
|
||||||
struct commit *new_parent;
|
struct commit *new_parent;
|
||||||
|
|
||||||
|
3
commit.h
3
commit.h
@ -176,7 +176,8 @@ typedef int (*each_commit_graft_fn)(const struct commit_graft *, void *);
|
|||||||
struct commit_graft *read_graft_line(struct strbuf *line);
|
struct commit_graft *read_graft_line(struct strbuf *line);
|
||||||
#define register_commit_graft(r, g, i) register_commit_graft_##r(g, i)
|
#define register_commit_graft(r, g, i) register_commit_graft_##r(g, i)
|
||||||
int register_commit_graft_the_repository(struct commit_graft *, int);
|
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(struct commit *rev1, struct commit *rev2);
|
||||||
extern struct commit_list *get_merge_bases_many(struct commit *one, int n, struct commit **twos);
|
extern struct commit_list *get_merge_bases_many(struct commit *one, int n, struct commit **twos);
|
||||||
|
2
fsck.c
2
fsck.c
@ -738,7 +738,7 @@ static int fsck_commit_buffer(struct commit *commit, const char *buffer,
|
|||||||
buffer += 41;
|
buffer += 41;
|
||||||
parent_line_count++;
|
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);
|
parent_count = commit_list_count(commit->parents);
|
||||||
if (graft) {
|
if (graft) {
|
||||||
if (graft->nr_parent == -1 && !parent_count)
|
if (graft->nr_parent == -1 && !parent_count)
|
||||||
|
@ -109,7 +109,7 @@ struct commit_list *get_shallow_commits(struct object_array *heads, int depth,
|
|||||||
cur_depth++;
|
cur_depth++;
|
||||||
if ((depth != INFINITE_DEPTH && cur_depth >= depth) ||
|
if ((depth != INFINITE_DEPTH && cur_depth >= depth) ||
|
||||||
(is_repository_shallow() && !commit->parents &&
|
(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)) {
|
graft->nr_parent < 0)) {
|
||||||
commit_list_insert(commit, &result);
|
commit_list_insert(commit, &result);
|
||||||
commit->object.flags |= shallow_flag;
|
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++) {
|
for (i = 0; i < sa->nr; i++) {
|
||||||
if (has_object_file(sa->oid + i)) {
|
if (has_object_file(sa->oid + i)) {
|
||||||
struct commit_graft *graft;
|
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)
|
if (graft && graft->nr_parent < 0)
|
||||||
continue;
|
continue;
|
||||||
info->ours[info->nr_ours++] = i;
|
info->ours[info->nr_ours++] = i;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user