void show_commit_decorations(struct commit *commit)
{
- struct name_decoration *deco;
+ const struct name_decoration *deco;
static char buf[1024];
buf[sizeof(buf) - 1] = 0;
- deco = lookup_decoration(&name_decoration, &commit->object);
+ deco = get_name_decoration(&commit->object);
html("<span class='decoration'>");
while (deco) {
- if (!prefixcmp(deco->name, "refs/heads/")) {
+ if (starts_with(deco->name, "refs/heads/")) {
strncpy(buf, deco->name + 11, sizeof(buf) - 1);
cgit_log_link(buf, NULL, "branch-deco", buf, NULL,
ctx.qry.vpath, 0, NULL, NULL,
ctx.qry.showmsg);
}
- else if (!prefixcmp(deco->name, "tag: refs/tags/")) {
+ else if (starts_with(deco->name, "tag: refs/tags/")) {
strncpy(buf, deco->name + 15, sizeof(buf) - 1);
cgit_tag_link(buf, NULL, "tag-deco", ctx.qry.head, buf);
}
- else if (!prefixcmp(deco->name, "refs/tags/")) {
+ else if (starts_with(deco->name, "refs/tags/")) {
strncpy(buf, deco->name + 10, sizeof(buf) - 1);
cgit_tag_link(buf, NULL, "tag-deco", ctx.qry.head, buf);
}
- else if (!prefixcmp(deco->name, "refs/remotes/")) {
+ else if (starts_with(deco->name, "refs/remotes/")) {
if (!ctx.repo->enable_remote_branches)
goto next;
strncpy(buf, deco->name + 13, sizeof(buf) - 1);
strncpy(buf, deco->name, sizeof(buf) - 1);
cgit_commit_link(buf, NULL, "deco", ctx.qry.head,
sha1_to_hex(commit->object.sha1),
- ctx.qry.vpath, 0);
+ ctx.qry.vpath);
}
next:
deco = deco->next;
}
}
cgit_commit_link(info->subject, NULL, NULL, ctx.qry.head,
- sha1_to_hex(commit->object.sha1), ctx.qry.vpath, 0);
+ sha1_to_hex(commit->object.sha1), ctx.qry.vpath);
show_commit_decorations(commit);
html("</td><td>");
+ cgit_open_filter(ctx.repo->email_filter, info->author_email, "log");
html_txt(info->author);
+ cgit_close_filter(ctx.repo->email_filter);
if (revs->graph) {
html("</td><td>");
else if (commit_sort == 2)
argv_array_push(&rev_argv, "--topo-order");
- if (path) {
- argv_array_push(&rev_argv, "--");
+ argv_array_push(&rev_argv, "--");
+ if (path)
argv_array_push(&rev_argv, path);
- }
init_revisions(&rev, NULL);
rev.abbrev = DEFAULT_ABBREV;
rev.commit_format = CMIT_FMT_DEFAULT;
rev.verbose_header = 1;
rev.show_root_diff = 0;
+ rev.ignore_missing = 1;
setup_revisions(rev_argv.argc, rev_argv.argv, &rev, NULL);
load_ref_decorations(DECORATE_FULL_REFS);
rev.show_decorations = 1;
ofs = 0;
for (i = 0; i < ofs && (commit = get_revision(&rev)) != NULL; i++) {
- free(commit->buffer);
- commit->buffer = NULL;
+ free_commit_buffer(commit);
free_commit_list(commit->parents);
commit->parents = NULL;
}
for (i = 0; i < cnt && (commit = get_revision(&rev)) != NULL; i++) {
print_commit(commit, &rev);
- free(commit->buffer);
- commit->buffer = NULL;
+ free_commit_buffer(commit);
free_commit_list(commit->parents);
commit->parents = NULL;
}