static struct tree *shift_tree_object(struct tree *one, struct tree *two,
const char *subtree_shift)
{
- unsigned char shifted[20];
+ struct object_id shifted;
if (!*subtree_shift) {
- shift_tree(one->object.sha1, two->object.sha1, shifted, 0);
+ shift_tree(get_object_hash(one->object), get_object_hash(two->object), shifted.hash, 0);
} else {
- shift_tree_by(one->object.sha1, two->object.sha1, shifted,
+ shift_tree_by(get_object_hash(one->object), get_object_hash(two->object), shifted.hash,
subtree_shift);
}
- if (!hashcmp(two->object.sha1, shifted))
+ if (!oidcmp(&two->object.oid, &shifted))
return two;
- return lookup_tree(shifted);
+ return lookup_tree(shifted.hash);
}
static struct commit *make_virtual_commit(struct tree *tree, const char *comment)
if (commit->util)
printf("virtual %s\n", merge_remote_util(commit)->name);
else {
- printf("%s ", find_unique_abbrev(commit->object.sha1, DEFAULT_ABBREV));
+ printf("%s ", find_unique_abbrev(get_object_hash(commit->object), DEFAULT_ABBREV));
if (parse_commit(commit) != 0)
printf(_("(bad commit)\n"));
else {
{
struct string_list_item *item;
struct stage_data *e = xcalloc(1, sizeof(struct stage_data));
- get_tree_entry(o->object.sha1, path,
+ get_tree_entry(get_object_hash(o->object), path,
e->stages[1].sha, &e->stages[1].mode);
- get_tree_entry(a->object.sha1, path,
+ get_tree_entry(get_object_hash(a->object), path,
e->stages[2].sha, &e->stages[2].mode);
- get_tree_entry(b->object.sha1, path,
+ get_tree_entry(get_object_hash(b->object), path,
e->stages[3].sha, &e->stages[3].mode);
item = string_list_insert(entries, path);
item->util = e;
opts.show_rename_progress = o->show_rename_progress;
opts.output_format = DIFF_FORMAT_NO_OUTPUT;
diff_setup_done(&opts);
- diff_tree_sha1(o_tree->object.sha1, tree->object.sha1, "", &opts);
+ diff_tree_sha1(get_object_hash(o_tree->object), get_object_hash(tree->object), "", &opts);
diffcore_std(&opts);
if (opts.needed_rename_limit > o->needed_rename_limit)
o->needed_rename_limit = opts.needed_rename_limit;
common = shift_tree_object(head, common, o->subtree_shift);
}
- if (sha_eq(common->object.sha1, merge->object.sha1)) {
+ if (sha_eq(get_object_hash(common->object), get_object_hash(merge->object))) {
output(o, 0, _("Already up-to-date!"));
*result = head;
return 1;
if (code != 0) {
if (show(o, 4) || o->call_depth)
die(_("merging of trees %s and %s failed"),
- sha1_to_hex(head->object.sha1),
- sha1_to_hex(merge->object.sha1));
+ oid_to_hex(&head->object.oid),
+ oid_to_hex(&merge->object.oid));
else
exit(128);
}