]> git.ipfire.org Git - thirdparty/git.git/blobdiff - builtin/checkout.c
tree-walk: init_tree_desc take an oid to get the hash algorithm
[thirdparty/git.git] / builtin / checkout.c
index f53612f46870529e87cec15a2f7233c74e4b173d..03eff73fd031855db1dbd34bfcc1852bbe899f10 100644 (file)
@@ -701,7 +701,7 @@ static int reset_tree(struct tree *tree, const struct checkout_opts *o,
                               info->commit ? &info->commit->object.oid : null_oid(),
                               NULL);
        parse_tree(tree);
-       init_tree_desc(&tree_desc, tree->buffer, tree->size);
+       init_tree_desc(&tree_desc, &tree->object.oid, tree->buffer, tree->size);
        switch (unpack_trees(1, &tree_desc, &opts)) {
        case -2:
                *writeout_error = 1;
@@ -815,10 +815,12 @@ static int merge_working_tree(const struct checkout_opts *opts,
                        die(_("unable to parse commit %s"),
                                oid_to_hex(old_commit_oid));
 
-               init_tree_desc(&trees[0], tree->buffer, tree->size);
+               init_tree_desc(&trees[0], &tree->object.oid,
+                              tree->buffer, tree->size);
                parse_tree(new_tree);
                tree = new_tree;
-               init_tree_desc(&trees[1], tree->buffer, tree->size);
+               init_tree_desc(&trees[1], &tree->object.oid,
+                              tree->buffer, tree->size);
 
                ret = unpack_trees(2, trees, &topts);
                clear_unpack_trees_porcelain(&topts);