specfile cleanups
[gitweb.git] / server-info.c
index 3c08a288db9fd36b637b8da854a63cfbdcaa03da..0cba8e19f7582fa5771ed6ab94a76e1d87efc53a 100644 (file)
@@ -9,7 +9,15 @@ static FILE *info_ref_fp;
 
 static int add_info_ref(const char *path, const unsigned char *sha1)
 {
+       struct object *o = parse_object(sha1);
+
        fprintf(info_ref_fp, "%s        %s\n", sha1_to_hex(sha1), path);
+       if (o->type == tag_type) {
+               o = deref_tag(o, path, 0);
+               if (o)
+                       fprintf(info_ref_fp, "%s        %s^{}\n",
+                               sha1_to_hex(o->sha1), path);
+       }
        return 0;
 }