{
struct object *obj = lookup_object(sha1);
if (!obj) {
- struct tag *ret = xcalloc(1, sizeof(struct tag));
+ struct tag *ret = alloc_tag_node();
created_object(sha1, &ret->object);
ret->object.type = TYPE_TAG;
return ret;
if (size < 64)
return -1;
- if (memcmp("object ", data, 7) || get_sha1_hex(data + 7, object))
+ if (memcmp("object ", data, 7) || get_sha1_hex((char *) data + 7, object))
return -1;
- type_line = data + 48;
+ type_line = (char *) data + 48;
if (memcmp("\ntype ", type_line-1, 6))
return -1;