diff options
Diffstat (limited to 'builtin/read-tree.c')
-rw-r--r-- | builtin/read-tree.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/builtin/read-tree.c b/builtin/read-tree.c index 20e7db1973..6f89cec0fb 100644 --- a/builtin/read-tree.c +++ b/builtin/read-tree.c @@ -261,8 +261,9 @@ int cmd_read_tree(int argc, const char **argv, const char *cmd_prefix) cache_tree_free(&the_index.cache_tree); for (i = 0; i < nr_trees; i++) { struct tree *tree = trees[i]; - parse_tree(tree); - init_tree_desc(t+i, tree->buffer, tree->size); + if (parse_tree(tree) < 0) + return 128; + init_tree_desc(t+i, &tree->object.oid, tree->buffer, tree->size); } if (unpack_trees(nr_trees, t, &opts)) return 128; |