summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--ui-commit.c17
-rw-r--r--ui-log.c4
-rw-r--r--ui-summary.c8
3 files changed, 18 insertions, 11 deletions
diff --git a/ui-commit.c b/ui-commit.c
index f654208..8916212 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -10,26 +10,24 @@
10 10
11void cgit_print_commit(const char *hex) 11void cgit_print_commit(const char *hex)
12{ 12{
13 struct commit *commit; 13 struct commit *commit;
14 struct commitinfo *info; 14 struct commitinfo *info;
15 struct commit_list *p; 15 struct commit_list *p;
16
17 unsigned char sha1[20]; 16 unsigned char sha1[20];
17 char *query;
18 18
19 if (get_sha1(hex, sha1)) { 19 if (get_sha1(hex, sha1)) {
20 cgit_print_error(fmt("Bad object id: %s", hex)); 20 cgit_print_error(fmt("Bad object id: %s", hex));
21 return; 21 return;
22 } 22 }
23
24 commit = lookup_commit_reference(sha1); 23 commit = lookup_commit_reference(sha1);
25 if (!commit) { 24 if (!commit) {
26 cgit_print_error(fmt("Bad commit reference: %s", hex)); 25 cgit_print_error(fmt("Bad commit reference: %s", hex));
27 return; 26 return;
28 } 27 }
29
30 info = cgit_parse_commit(commit); 28 info = cgit_parse_commit(commit);
31 29
32 html("<table class='commit-info'>\n"); 30 html("<table class='commit-info'>\n");
33 html("<tr><th>author</th><td>"); 31 html("<tr><th>author</th><td>");
34 html_txt(info->author); 32 html_txt(info->author);
35 html(" "); 33 html(" ");
@@ -42,18 +40,21 @@ void cgit_print_commit(const char *hex)
42 html(" "); 40 html(" ");
43 html_txt(info->committer_email); 41 html_txt(info->committer_email);
44 html("</td><td class='right'>"); 42 html("</td><td class='right'>");
45 cgit_print_date(info->committer_date); 43 cgit_print_date(info->committer_date);
46 html("</td></tr>\n"); 44 html("</td></tr>\n");
47 html("<tr><th>tree</th><td colspan='2' class='sha1'><a href='"); 45 html("<tr><th>tree</th><td colspan='2' class='sha1'><a href='");
48 html_attr(cgit_pageurl(cgit_query_repo, "tree", fmt("id=%s", sha1_to_hex(commit->tree->object.sha1)))); 46 query = fmt("id=%s", sha1_to_hex(commit->tree->object.sha1));
47 html_attr(cgit_pageurl(cgit_query_repo, "tree", query));
49 htmlf("'>%s</a></td></tr>\n", sha1_to_hex(commit->tree->object.sha1)); 48 htmlf("'>%s</a></td></tr>\n", sha1_to_hex(commit->tree->object.sha1));
50 49 for (p = commit->parents; p ; p = p->next) {
51 for (p = commit->parents; p ; p = p->next) { 50 html("<tr><th>parent</th>"
52 html("<tr><th>parent</th><td colspan='2' class='sha1'><a href='"); 51 "<td colspan='2' class='sha1'>"
53 html_attr(cgit_pageurl(cgit_query_repo, "commit", fmt("id=%s", sha1_to_hex(p->item->object.sha1)))); 52 "<a href='");
53 query = fmt("id=%s", sha1_to_hex(p->item->object.sha1));
54 html_attr(cgit_pageurl(cgit_query_repo, "commit", query));
54 htmlf("'>%s</a></td></tr>\n", 55 htmlf("'>%s</a></td></tr>\n",
55 sha1_to_hex(p->item->object.sha1)); 56 sha1_to_hex(p->item->object.sha1));
56 } 57 }
57 html("</table>\n"); 58 html("</table>\n");
58 html("<div class='commit-subject'>"); 59 html("<div class='commit-subject'>");
59 html_txt(info->subject); 60 html_txt(info->subject);
diff --git a/ui-log.c b/ui-log.c
index b7da49f..def96f6 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -46,13 +46,15 @@ void cgit_print_log(const char *tip, int ofs, int cnt)
46 rev.show_root_diff = 0; 46 rev.show_root_diff = 0;
47 setup_revisions(2, argv, &rev, NULL); 47 setup_revisions(2, argv, &rev, NULL);
48 prepare_revision_walk(&rev); 48 prepare_revision_walk(&rev);
49 49
50 html("<h2>Log</h2>"); 50 html("<h2>Log</h2>");
51 html("<table class='list log'>"); 51 html("<table class='list log'>");
52 html("<tr><th class='left'>Date</th><th class='left'>Message</th><th class='left'>Author</th></tr>\n"); 52 html("<tr><th class='left'>Date</th>"
53 "<th class='left'>Message</th>"
54 "<th class='left'>Author</th></tr>\n");
53 55
54 if (ofs<0) 56 if (ofs<0)
55 ofs = 0; 57 ofs = 0;
56 58
57 for (i = 0; i < ofs && (commit = get_revision(&rev)) != NULL; i++) { 59 for (i = 0; i < ofs && (commit = get_revision(&rev)) != NULL; i++) {
58 free(commit->buffer); 60 free(commit->buffer);
diff --git a/ui-summary.c b/ui-summary.c
index 5ddeee3..638c8f6 100644
--- a/ui-summary.c
+++ b/ui-summary.c
@@ -25,13 +25,14 @@ static int cgit_print_branch_cb(const char *refname, const unsigned char *sha1,
25 strncpy(buf, refname, sizeof(buf)); 25 strncpy(buf, refname, sizeof(buf));
26 html_txt(buf); 26 html_txt(buf);
27 html_link_close(); 27 html_link_close();
28 html("</td><td>"); 28 html("</td><td>");
29 cgit_print_date(commit->date); 29 cgit_print_date(commit->date);
30 html("</td><td>"); 30 html("</td><td>");
31 url = cgit_pageurl(cgit_query_repo, "commit", fmt("id=%s", sha1_to_hex(sha1))); 31 url = cgit_pageurl(cgit_query_repo, "commit",
32 fmt("id=%s", sha1_to_hex(sha1)));
32 html_link_open(url, NULL, NULL); 33 html_link_open(url, NULL, NULL);
33 html_txt(info->subject); 34 html_txt(info->subject);
34 html_link_close(); 35 html_link_close();
35 html("</td><td>"); 36 html("</td><td>");
36 html_txt(info->author); 37 html_txt(info->author);
37 html("</td></tr>\n"); 38 html("</td></tr>\n");
@@ -46,13 +47,16 @@ static int cgit_print_branch_cb(const char *refname, const unsigned char *sha1,
46 return 0; 47 return 0;
47} 48}
48 49
49static void cgit_print_branches() 50static void cgit_print_branches()
50{ 51{
51 html("<table class='list'>"); 52 html("<table class='list'>");
52 html("<tr><th class='left'>Branch</th><th class='left'>Updated</th><th class='left'>Commit subject</th><th class='left'>Author</th></tr>\n"); 53 html("<tr><th class='left'>Branch</th>"
54 "<th class='left'>Updated</th>"
55 "<th class='left'>Commit subject</th>"
56 "<th class='left'>Author</th></tr>\n");
53 for_each_branch_ref(cgit_print_branch_cb, NULL); 57 for_each_branch_ref(cgit_print_branch_cb, NULL);
54 html("</table>"); 58 html("</table>");
55} 59}
56 60
57void cgit_print_summary() 61void cgit_print_summary()
58{ 62{