about summary refs log tree commit diff stats
path: root/ui-commit.c
diff options
context:
space:
mode:
authorLars Hjemli2007-02-08 13:53:13 +0100
committerLars Hjemli2007-02-08 13:58:58 +0100
commitab2ab95f09994560f62fd631f07d3b6e3577aa6e (patch)
tree846763c1bcb78bd27dc37c99e5f6d703ca5ab179 /ui-commit.c
parentcgit v0.2 (diff)
downloadcgit-ab2ab95f09994560f62fd631f07d3b6e3577aa6e.tar.gz
cgit-ab2ab95f09994560f62fd631f07d3b6e3577aa6e.zip
Add support for snapshots
Make a link from the commit viewer to a snapshot of the corresponding tree.

Currently only zip-format is supported.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-commit.c')
-rw-r--r--ui-commit.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/ui-commit.c b/ui-commit.c index 73fa104..de3f2cf 100644 --- a/ui-commit.c +++ b/ui-commit.c
@@ -128,6 +128,7 @@ void cgit_print_commit(const char *hex)
128 struct commit_list *p; 128 struct commit_list *p;
129 unsigned char sha1[20]; 129 unsigned char sha1[20];
130 char *query; 130 char *query;
131 char *filename;
131 132
132 if (get_sha1(hex, sha1)) { 133 if (get_sha1(hex, sha1)) {
133 cgit_print_error(fmt("Bad object id: %s", hex)); 134 cgit_print_error(fmt("Bad object id: %s", hex));
@@ -168,6 +169,12 @@ void cgit_print_commit(const char *hex)
168 htmlf("'>%s</a></td></tr>\n", 169 htmlf("'>%s</a></td></tr>\n",
169 sha1_to_hex(p->item->object.sha1)); 170 sha1_to_hex(p->item->object.sha1));
170 } 171 }
172 htmlf("<tr><th>download</th><td colspan='2' class='sha1'><a href='");
173 filename = fmt("%s-%s.zip", cgit_query_repo, hex);
174 html_attr(cgit_pageurl(cgit_query_repo, "snapshot",
175 fmt("id=%s&name=%s", hex, filename)));
176 htmlf("'>%s</a></td></tr>", filename);
177
171 html("</table>\n"); 178 html("</table>\n");
172 html("<div class='commit-subject'>"); 179 html("<div class='commit-subject'>");
173 html_txt(info->subject); 180 html_txt(info->subject);