@ -42,29 +42,29 @@ static void print_download_links(char *revname)
void cgit_print_tag ( char * revname )
void cgit_print_tag ( char * revname )
{
{
struct strbuf fullref = STRBUF_INIT ;
struct strbuf fullref = STRBUF_INIT ;
unsigned char sha1 [ 20 ] ;
struct object_id oid ;
struct object * obj ;
struct object * obj ;
if ( ! revname )
if ( ! revname )
revname = ctx . qry . head ;
revname = ctx . qry . head ;
strbuf_addf ( & fullref , " refs/tags/%s " , revname ) ;
strbuf_addf ( & fullref , " refs/tags/%s " , revname ) ;
if ( get_sha1 ( fullref . buf , sha1 ) ) {
if ( get_oid ( fullref . buf , & oid ) ) {
cgit_print_error_page ( 404 , " Not found " ,
cgit_print_error_page ( 404 , " Not found " ,
" Bad tag reference: %s " , revname ) ;
" Bad tag reference: %s " , revname ) ;
goto cleanup ;
goto cleanup ;
}
}
obj = parse_object ( sha1 ) ;
obj = parse_object ( oid . hash ) ;
if ( ! obj ) {
if ( ! obj ) {
cgit_print_error_page ( 500 , " Internal server error " ,
cgit_print_error_page ( 500 , " Internal server error " ,
" Bad object id: %s " , sha1_to_hex ( sha1 ) ) ;
" Bad object id: %s " , oid_to_hex ( & oid ) ) ;
goto cleanup ;
goto cleanup ;
}
}
if ( obj - > type = = OBJ_TAG ) {
if ( obj - > type = = OBJ_TAG ) {
struct tag * tag ;
struct tag * tag ;
struct taginfo * info ;
struct taginfo * info ;
tag = lookup_tag ( sha1 ) ;
tag = lookup_tag ( oid . hash ) ;
if ( ! tag | | parse_tag ( tag ) | | ! ( info = cgit_parse_tag ( tag ) ) ) {
if ( ! tag | | parse_tag ( tag ) | | ! ( info = cgit_parse_tag ( tag ) ) ) {
cgit_print_error_page ( 500 , " Internal server error " ,
cgit_print_error_page ( 500 , " Internal server error " ,
" Bad tag object: %s " , revname ) ;
" Bad tag object: %s " , revname ) ;
@ -74,7 +74,7 @@ void cgit_print_tag(char *revname)
html ( " <table class='commit-info'> \n " ) ;
html ( " <table class='commit-info'> \n " ) ;
htmlf ( " <tr><td>tag name</td><td> " ) ;
htmlf ( " <tr><td>tag name</td><td> " ) ;
html_txt ( revname ) ;
html_txt ( revname ) ;
htmlf ( " (%s)</td></tr> \n " , sha1_to_hex ( sha1 ) ) ;
htmlf ( " (%s)</td></tr> \n " , oid_to_hex ( & oid ) ) ;
if ( info - > tagger_date > 0 ) {
if ( info - > tagger_date > 0 ) {
html ( " <tr><td>tag date</td><td> " ) ;
html ( " <tr><td>tag date</td><td> " ) ;
html_txt ( show_date ( info - > tagger_date , info - > tagger_tz ,
html_txt ( show_date ( info - > tagger_date , info - > tagger_tz ,