When a lightweight tag is referencing a commit object, cgit now uses
the commit date when comparing tag age. Also, the commitdate and author
info is printed in the refs view, making lightweight tags appear similar
to annotated tags.
Signed-off-by: Stefan Bühler <lighttpd@stbuehler.de>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
{
struct refinfo *r1 = *(struct refinfo **)a;
struct refinfo *r2 = *(struct refinfo **)b;
{
struct refinfo *r1 = *(struct refinfo **)a;
struct refinfo *r2 = *(struct refinfo **)b;
- return cmp_age(r1->tag->tagger_date, r2->tag->tagger_date);
+ if (r1->object->type != OBJ_COMMIT)
+ r1date = r1->tag->tagger_date;
+ else
+ r1date = r1->commit->committer_date;
+
+ if (r2->object->type != OBJ_COMMIT)
+ r2date = r2->tag->tagger_date;
+ else
+ r2date = r2->commit->committer_date;
+
+ return cmp_age(r1date, r2date);
}
static int print_branch(struct refinfo *ref)
}
static int print_branch(struct refinfo *ref)
print_tag_downloads(ctx.repo, name);
else
cgit_object_link(ref->object);
print_tag_downloads(ctx.repo, name);
else
cgit_object_link(ref->object);
+ html("</td><td>");
+ if (ref->object->type == OBJ_COMMIT)
+ html(ref->commit->author);
+ html("</td><td colspan='2'>");
+ if (ref->object->type == OBJ_COMMIT)
+ cgit_print_age(ref->commit->commit->date, -1, NULL);
html("</td></tr>\n");
}
return 0;
html("</td></tr>\n");
}
return 0;