Merge branch 'ps/object-wo-the-repository'
The object layer has been updated to take an explicit repository instance as a parameter in more code paths. * ps/object-wo-the-repository: hash: stop depending on `the_repository` in `null_oid()` hash: fix "-Wsign-compare" warnings object-file: split out logic regarding hash algorithms delta-islands: stop depending on `the_repository` object-file-convert: stop depending on `the_repository` pack-bitmap-write: stop depending on `the_repository` pack-revindex: stop depending on `the_repository` pack-check: stop depending on `the_repository` environment: move access to "core.bigFileThreshold" into repo settings pack-write: stop depending on `the_repository` and `the_hash_algo` object: stop depending on `the_repository` csum-file: stop depending on `the_repository`
This commit is contained in:
26
merge-ort.c
26
merge-ort.c
@@ -1817,7 +1817,7 @@ static int merge_submodule(struct merge_options *opt,
|
||||
BUG("submodule deleted on one side; this should be handled outside of merge_submodule()");
|
||||
|
||||
if ((sub_not_initialized = repo_submodule_init(&subrepo,
|
||||
opt->repo, path, null_oid()))) {
|
||||
opt->repo, path, null_oid(the_hash_algo)))) {
|
||||
path_msg(opt, CONFLICT_SUBMODULE_NOT_INITIALIZED, 0,
|
||||
path, NULL, NULL, NULL,
|
||||
_("Failed to merge submodule %s (not checked out)"),
|
||||
@@ -2199,7 +2199,7 @@ static int handle_content_merge(struct merge_options *opt,
|
||||
two_way = ((S_IFMT & o->mode) != (S_IFMT & a->mode));
|
||||
|
||||
merge_status = merge_3way(opt, path,
|
||||
two_way ? null_oid() : &o->oid,
|
||||
two_way ? null_oid(the_hash_algo) : &o->oid,
|
||||
&a->oid, &b->oid,
|
||||
pathnames, extra_marker_size,
|
||||
&result_buf);
|
||||
@@ -2231,7 +2231,7 @@ static int handle_content_merge(struct merge_options *opt,
|
||||
} else if (S_ISGITLINK(a->mode)) {
|
||||
int two_way = ((S_IFMT & o->mode) != (S_IFMT & a->mode));
|
||||
clean = merge_submodule(opt, pathnames[0],
|
||||
two_way ? null_oid() : &o->oid,
|
||||
two_way ? null_oid(the_hash_algo) : &o->oid,
|
||||
&a->oid, &b->oid, &result->oid);
|
||||
if (clean < 0)
|
||||
return -1;
|
||||
@@ -2739,7 +2739,7 @@ static void apply_directory_rename_modifications(struct merge_options *opt,
|
||||
assert(!new_ci->match_mask);
|
||||
new_ci->dirmask = 0;
|
||||
new_ci->stages[1].mode = 0;
|
||||
oidcpy(&new_ci->stages[1].oid, null_oid());
|
||||
oidcpy(&new_ci->stages[1].oid, null_oid(the_hash_algo));
|
||||
|
||||
/*
|
||||
* Now that we have the file information in new_ci, make sure
|
||||
@@ -2752,7 +2752,7 @@ static void apply_directory_rename_modifications(struct merge_options *opt,
|
||||
continue;
|
||||
/* zero out any entries related to files */
|
||||
ci->stages[i].mode = 0;
|
||||
oidcpy(&ci->stages[i].oid, null_oid());
|
||||
oidcpy(&ci->stages[i].oid, null_oid(the_hash_algo));
|
||||
}
|
||||
|
||||
/* Now we want to focus on new_ci, so reassign ci to it. */
|
||||
@@ -3123,7 +3123,7 @@ static int process_renames(struct merge_options *opt,
|
||||
if (type_changed) {
|
||||
/* rename vs. typechange */
|
||||
/* Mark the original as resolved by removal */
|
||||
memcpy(&oldinfo->stages[0].oid, null_oid(),
|
||||
memcpy(&oldinfo->stages[0].oid, null_oid(the_hash_algo),
|
||||
sizeof(oldinfo->stages[0].oid));
|
||||
oldinfo->stages[0].mode = 0;
|
||||
oldinfo->filemask &= 0x06;
|
||||
@@ -4006,7 +4006,7 @@ static int process_entry(struct merge_options *opt,
|
||||
if (ci->filemask & (1 << i))
|
||||
continue;
|
||||
ci->stages[i].mode = 0;
|
||||
oidcpy(&ci->stages[i].oid, null_oid());
|
||||
oidcpy(&ci->stages[i].oid, null_oid(the_hash_algo));
|
||||
}
|
||||
} else if (ci->df_conflict && ci->merged.result.mode != 0) {
|
||||
/*
|
||||
@@ -4053,7 +4053,7 @@ static int process_entry(struct merge_options *opt,
|
||||
continue;
|
||||
/* zero out any entries related to directories */
|
||||
new_ci->stages[i].mode = 0;
|
||||
oidcpy(&new_ci->stages[i].oid, null_oid());
|
||||
oidcpy(&new_ci->stages[i].oid, null_oid(the_hash_algo));
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -4175,11 +4175,11 @@ static int process_entry(struct merge_options *opt,
|
||||
new_ci->merged.result.mode = ci->stages[2].mode;
|
||||
oidcpy(&new_ci->merged.result.oid, &ci->stages[2].oid);
|
||||
new_ci->stages[1].mode = 0;
|
||||
oidcpy(&new_ci->stages[1].oid, null_oid());
|
||||
oidcpy(&new_ci->stages[1].oid, null_oid(the_hash_algo));
|
||||
new_ci->filemask = 5;
|
||||
if ((S_IFMT & b_mode) != (S_IFMT & o_mode)) {
|
||||
new_ci->stages[0].mode = 0;
|
||||
oidcpy(&new_ci->stages[0].oid, null_oid());
|
||||
oidcpy(&new_ci->stages[0].oid, null_oid(the_hash_algo));
|
||||
new_ci->filemask = 4;
|
||||
}
|
||||
|
||||
@@ -4187,11 +4187,11 @@ static int process_entry(struct merge_options *opt,
|
||||
ci->merged.result.mode = ci->stages[1].mode;
|
||||
oidcpy(&ci->merged.result.oid, &ci->stages[1].oid);
|
||||
ci->stages[2].mode = 0;
|
||||
oidcpy(&ci->stages[2].oid, null_oid());
|
||||
oidcpy(&ci->stages[2].oid, null_oid(the_hash_algo));
|
||||
ci->filemask = 3;
|
||||
if ((S_IFMT & a_mode) != (S_IFMT & o_mode)) {
|
||||
ci->stages[0].mode = 0;
|
||||
oidcpy(&ci->stages[0].oid, null_oid());
|
||||
oidcpy(&ci->stages[0].oid, null_oid(the_hash_algo));
|
||||
ci->filemask = 2;
|
||||
}
|
||||
|
||||
@@ -4316,7 +4316,7 @@ static int process_entry(struct merge_options *opt,
|
||||
/* Deleted on both sides */
|
||||
ci->merged.is_null = 1;
|
||||
ci->merged.result.mode = 0;
|
||||
oidcpy(&ci->merged.result.oid, null_oid());
|
||||
oidcpy(&ci->merged.result.oid, null_oid(the_hash_algo));
|
||||
assert(!ci->df_conflict);
|
||||
ci->merged.clean = !ci->path_conflict;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user