diff options
Diffstat (limited to 'lib/PublicInbox/RepoBase.pm')
-rw-r--r-- | lib/PublicInbox/RepoBase.pm | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/PublicInbox/RepoBase.pm b/lib/PublicInbox/RepoBase.pm index e600b1df..5d38579c 100644 --- a/lib/PublicInbox/RepoBase.pm +++ b/lib/PublicInbox/RepoBase.pm @@ -86,7 +86,7 @@ sub r { my $env = $req->{env}; my $base = PublicInbox::Repobrowse::base_url($env); my ($redir) = @extra; - if ($redir =~ m!\A\.\./!) { # relative redirect + if (index($redir, '/') != 0) { # relative redirect my @orig = split(m!/+!, $env->{PATH_INFO}); my @dest = split(m!/+!, $redir); @@ -98,7 +98,7 @@ sub r { $end = pop @dest if $dest[-1] =~ /\A[#\?]/; $redir = $base . join('/', @orig, @dest) . $end; } else { - $redir = $base . '/' . $redir; + $redir = $base . $redir; } push @h, qw(Content-Type text/plain Location), $redir; |