oops
diff --git a/src/tree.c b/src/tree.c
index 43eefa5..714f9c7 100644
--- a/src/tree.c
+++ b/src/tree.c
@@ -1159,8 +1159,8 @@
goto cleanup;
for (i = 0; i < nupdates; i++) {
- const git_tree_update *last_update = i == 0 ? NULL : &updates[i-1];
- const git_tree_update *update = &updates[i];
+ const git_tree_update *last_update = i == 0 ? NULL : git_vector_get(&entries, i-1);
+ const git_tree_update *update = git_vector_get(&entries, i);
size_t common_prefix = 0, steps_up, j;
const char *path;
diff --git a/tests/object/tree/update.c b/tests/object/tree/update.c
index b38646a..0e13982 100644
--- a/tests/object/tree/update.c
+++ b/tests/object/tree/update.c
@@ -190,7 +190,7 @@
git_index_free(idx);
/* Perform the same operations via the tree updater */
- cl_git_pass(git_tree_create_updated(&tree_updater_id, g_repo, base_tree, 3, updates));
+ cl_git_pass(git_tree_create_updated(&tree_updater_id, g_repo, base_tree, 4, updates));
cl_assert_equal_oid(&tree_index_id, &tree_updater_id);
}