Be careful when dereferencing tags.

One caller of deref_tag() was not careful enough to make sure
what deref_tag() returned was not NULL (i.e. we found a tag
object that points at an object we do not have).  Fix it, and
warn about refs that point at such an incomplete tag where
needed.

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano
2005-11-02 15:19:13 -08:00
parent 2fd955cc0b
commit 9534f40bc4
9 changed files with 21 additions and 14 deletions

2
tag.h
View File

@ -15,6 +15,6 @@ struct tag {
extern struct tag *lookup_tag(const unsigned char *sha1);
extern int parse_tag_buffer(struct tag *item, void *data, unsigned long size);
extern int parse_tag(struct tag *item);
extern struct object *deref_tag(struct object *);
extern struct object *deref_tag(struct object *, const char *, int);
#endif /* TAG_H */