diff options
author | Jakub Narebski <jnareb@gmail.com> | 2006-08-14 02:10:06 +0200 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-08-14 17:10:52 -0700 |
commit | 1e0cf030c047741cab9ef36b91bc2ae57b83e405 (patch) | |
tree | 85691b912aa66ef120745667c1af4bfd9e3731fd | |
parent | gitweb: Separate main part of git_history into git_history_body (diff) | |
download | tgif-1e0cf030c047741cab9ef36b91bc2ae57b83e405.tar.xz |
gitweb: Separate finding project owner into git_get_project_owner
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | gitweb/gitweb.perl | 50 |
1 files changed, 32 insertions, 18 deletions
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 5af6e77e22..6be6c55009 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -527,6 +527,37 @@ sub git_get_projects_list { return @list; } +sub git_get_project_owner { + my $project = shift; + my $owner; + + return undef unless $project; + + # read from file (url-encoded): + # 'git%2Fgit.git Linus+Torvalds' + # 'libs%2Fklibc%2Fklibc.git H.+Peter+Anvin' + # 'linux%2Fhotplug%2Fudev.git Greg+Kroah-Hartman' + if (-f $projects_list) { + open (my $fd , $projects_list); + while (my $line = <$fd>) { + chomp $line; + my ($pr, $ow) = split ' ', $line; + $pr = unescape($pr); + $ow = unescape($ow); + if ($pr eq $project) { + $owner = decode("utf8", $ow, Encode::FB_DEFAULT); + last; + } + } + close $fd; + } + if (!defined $owner) { + $owner = get_file_owner("$projectroot/$project"); + } + + return $owner; +} + sub git_get_references { my $type = shift || ""; my %refs; @@ -1458,24 +1489,7 @@ sub git_summary { my %co = parse_commit($head); my %cd = parse_date($co{'committer_epoch'}, $co{'committer_tz'}); - my $owner; - if (-f $projects_list) { - open (my $fd , $projects_list); - while (my $line = <$fd>) { - chomp $line; - my ($pr, $ow) = split ' ', $line; - $pr = unescape($pr); - $ow = unescape($ow); - if ($pr eq $project) { - $owner = decode("utf8", $ow, Encode::FB_DEFAULT); - last; - } - } - close $fd; - } - if (!defined $owner) { - $owner = get_file_owner("$projectroot/$project"); - } + my $owner = git_get_project_owner($project); my $refs = git_get_references(); git_header_html(); |