diff options
| author | Lars Hjemli <hjemli@gmail.com> | 2007-10-28 15:36:18 +0100 | 
|---|---|---|
| committer | Lars Hjemli <hjemli@gmail.com> | 2007-10-28 15:38:19 +0100 | 
| commit | cbcdbcf2bff23113fe81df8f11fe7843b8ed637e (patch) | |
| tree | 1c434e9005aa946daa8f7aa49a9c9f3656349068 | |
| parent | 68ca032dbe7379f78775fb03ef34a9ad2abc409f (diff) | |
| download | cgit-cbcdbcf2bff23113fe81df8f11fe7843b8ed637e.tar.gz cgit-cbcdbcf2bff23113fe81df8f11fe7843b8ed637e.tar.bz2 | |
Make print_branch() handle refs not pointing at commits
The master branch of stable/linux-2.6.20 currently references a tag
object, which makes print_branch() die with a segfault. This teaches
print_branch() to handle such cases more gracefully.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
| -rw-r--r-- | ui-summary.c | 16 | 
1 files changed, 11 insertions, 5 deletions
| diff --git a/ui-summary.c b/ui-summary.c index 04a466a..ba90510 100644 --- a/ui-summary.c +++ b/ui-summary.c @@ -58,11 +58,17 @@ static int print_branch(struct refinfo *ref)  	html("<tr><td>");  	cgit_log_link(name, NULL, NULL, name, NULL, NULL, 0);  	html("</td><td>"); -	cgit_print_age(info->commit->date, -1, NULL); -	html("</td><td>"); -	html_txt(info->author); -	html("</td><td>"); -	cgit_commit_link(info->subject, NULL, NULL, name, NULL); + +	if (ref->object->type == OBJ_COMMIT) { +		cgit_print_age(info->commit->date, -1, NULL); +		html("</td><td>"); +		html_txt(info->author); +		html("</td><td>"); +		cgit_commit_link(info->subject, NULL, NULL, name, NULL); +	} else { +		html("</td><td></td><td>"); +		cgit_object_link(ref->object); +	}  	html("</td></tr>\n");  	return 0;  } | 
