mirror of
https://git.proxmox.com/git/libgit2
synced 2025-08-03 11:23:41 +00:00
tree: look for conflicts in the new tree when updating
We look at whether we're trying to replace a blob with a tree during the update phase, but we fail to look at whether we've just inserted a blob where we're now trying to insert a tree. Update the check to look at both places. The test for this was previously succeeding due to the bu where we did not look at the sorted output.
This commit is contained in:
parent
b85929c523
commit
8977658519
@ -1200,6 +1200,9 @@ int git_tree_create_updated(git_oid *out, git_repository *repo, git_tree *baseli
|
||||
|
||||
last = git_array_last(stack);
|
||||
entry = last->tree ? git_tree_entry_byname(last->tree, component.ptr) : NULL;
|
||||
if (!entry)
|
||||
entry = treebuilder_get(last->bld, component.ptr);
|
||||
|
||||
if (entry && git_tree_entry_type(entry) != GIT_OBJ_TREE) {
|
||||
giterr_set(GITERR_TREE, "D/F conflict when updating tree");
|
||||
error = -1;
|
||||
|
Loading…
Reference in New Issue
Block a user