X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FGitHTTPBackend.pm;h=4f58c6bbcb82a3e392793c3d765f11d8324fe0cf;hb=bd3ed82913cd065636525a5dd8bab9edcb3e3cb1;hp=7267a1d76978a2219130926002e2ddb9fcd679cc;hpb=4cf3587ec9e6014b0eabc8a3a63e502c0298912d;p=public-inbox.git diff --git a/lib/PublicInbox/GitHTTPBackend.pm b/lib/PublicInbox/GitHTTPBackend.pm index 7267a1d7..4f58c6bb 100644 --- a/lib/PublicInbox/GitHTTPBackend.pm +++ b/lib/PublicInbox/GitHTTPBackend.pm @@ -80,7 +80,7 @@ sub serve_dumb { return r(404); } - my $f = "$git->{git_dir}/$path"; + my $f = (ref $git ? $git->{git_dir} : $git) . '/' . $path; return r(404) unless -f $f && -r _; # just in case it's a FIFO :P my @st = stat(_); my $size = $st[7]; @@ -179,7 +179,7 @@ sub serve_smart { my $val = $env->{$name}; $env{$name} = $val if defined $val; } - my $git_dir = $git->{git_dir}; + my $git_dir = ref $git ? $git->{git_dir} : $git; $env{GIT_HTTP_EXPORT_ALL} = '1'; $env{PATH_TRANSLATED} = "$git_dir/$path"; my %rdr = ( 0 => fileno($in) );