aboutsummaryrefslogtreecommitdiff
path: root/tree.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2007-04-21 17:41:40 -0700
committerJunio C Hamano <junkio@cox.net>2007-04-21 17:42:02 -0700
commit42c4b58059fa9af65e90f2c418bb551e30d1d32f (patch)
treec6aa1b75909009b249ceb768717c27011b73adb4 /tree.c
parent520635fa3a7781cce412f6b02e165b5d897a99d1 (diff)
parent100c5f3b0b27ec6617de1a785c4ff481e92636c1 (diff)
downloadgit-42c4b58059fa9af65e90f2c418bb551e30d1d32f.tar.gz
git-42c4b58059fa9af65e90f2c418bb551e30d1d32f.tar.xz
Merge branch 'lt/objalloc'
* 'lt/objalloc': Clean up object creation to use more common code Use proper object allocators for unknown object nodes too
Diffstat (limited to 'tree.c')
-rw-r--r--tree.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/tree.c b/tree.c
index dbb63fc52..e4a39aa3c 100644
--- a/tree.c
+++ b/tree.c
@@ -127,12 +127,8 @@ int read_tree(struct tree *tree, int stage, const char **match)
struct tree *lookup_tree(const unsigned char *sha1)
{
struct object *obj = lookup_object(sha1);
- if (!obj) {
- struct tree *ret = alloc_tree_node();
- created_object(sha1, &ret->object);
- ret->object.type = OBJ_TREE;
- return ret;
- }
+ if (!obj)
+ return create_object(sha1, OBJ_TREE, alloc_tree_node());
if (!obj->type)
obj->type = OBJ_TREE;
if (obj->type != OBJ_TREE) {