summaryrefslogtreecommitdiff
path: root/tag.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2007-04-17 05:11:43 (GMT)
committerJunio C Hamano <junkio@cox.net>2007-04-17 06:36:16 (GMT)
commit100c5f3b0b27ec6617de1a785c4ff481e92636c1 (patch)
tree365323d9a0483a9ca22b3a334a627cde1354d44e /tag.c
parent2c1cbec1e2f0bd7b15fe5e921d287babfd91c7d3 (diff)
downloadgit-100c5f3b0b27ec6617de1a785c4ff481e92636c1.zip
git-100c5f3b0b27ec6617de1a785c4ff481e92636c1.tar.gz
git-100c5f3b0b27ec6617de1a785c4ff481e92636c1.tar.bz2
Clean up object creation to use more common code
This replaces the fairly odd "created_object()" function that did _most_ of the object setup with a more complete "create_object()" function that also has a more natural calling convention. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'tag.c')
-rw-r--r--tag.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/tag.c b/tag.c
index 56a49f4..330d287 100644
--- a/tag.c
+++ b/tag.c
@@ -20,13 +20,9 @@ struct object *deref_tag(struct object *o, const char *warn, int warnlen)
struct tag *lookup_tag(const unsigned char *sha1)
{
- struct object *obj = lookup_object(sha1);
- if (!obj) {
- struct tag *ret = alloc_tag_node();
- created_object(sha1, &ret->object);
- ret->object.type = OBJ_TAG;
- return ret;
- }
+ struct object *obj = lookup_object(sha1);
+ if (!obj)
+ return create_object(sha1, OBJ_TAG, alloc_tag_node());
if (!obj->type)
obj->type = OBJ_TAG;
if (obj->type != OBJ_TAG) {