Code

convert object type handling from a string to a number
[git.git] / tag.c
diff --git a/tag.c b/tag.c
index 864ac1bb602b1af07301d0b5f15d31e904b343a6..30ffc17e4130249b11f1b1066ee382ba1cd9e08a 100644 (file)
--- a/tag.c
+++ b/tag.c
@@ -85,18 +85,18 @@ int parse_tag_buffer(struct tag *item, void *data, unsigned long size)
 
 int parse_tag(struct tag *item)
 {
-       char type[20];
+       enum object_type type;
        void *data;
        unsigned long size;
        int ret;
 
        if (item->object.parsed)
                return 0;
-       data = read_sha1_file(item->object.sha1, type, &size);
+       data = read_sha1_file(item->object.sha1, &type, &size);
        if (!data)
                return error("Could not read %s",
                             sha1_to_hex(item->object.sha1));
-       if (strcmp(type, tag_type)) {
+       if (type != OBJ_TAG) {
                free(data);
                return error("Object %s not a tag",
                             sha1_to_hex(item->object.sha1));