summaryrefslogtreecommitdiff
path: root/gitweb
diff options
context:
space:
mode:
authorJakub Narebski <jnareb@gmail.com>2006-08-14 00:10:06 (GMT)
committerJunio C Hamano <junkio@cox.net>2006-08-15 00:10:52 (GMT)
commit1e0cf030c047741cab9ef36b91bc2ae57b83e405 (patch)
tree85691b912aa66ef120745667c1af4bfd9e3731fd /gitweb
parent581860e1b8ac01c2cdcb5d98862ef7a80e789781 (diff)
downloadgit-1e0cf030c047741cab9ef36b91bc2ae57b83e405.zip
git-1e0cf030c047741cab9ef36b91bc2ae57b83e405.tar.gz
git-1e0cf030c047741cab9ef36b91bc2ae57b83e405.tar.bz2
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>
Diffstat (limited to 'gitweb')
-rwxr-xr-xgitweb/gitweb.perl50
1 files changed, 32 insertions, 18 deletions
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 5af6e77..6be6c55 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();