diff options
author | Eric Wong <e@80x24.org> | 2017-02-15 22:35:18 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2017-02-16 04:27:50 +0000 |
commit | f6244586ba4f5a5e7575e1254be8c9bbe303fce9 (patch) | |
tree | d1a8dd757b632f8cff66e3878f7cfc01e6e2f12d /lib/PublicInbox/RepoGitPatch.pm | |
parent | 993dc7a772b10deda15733c8e750d98bf4d27bd0 (diff) | |
download | public-inbox-f6244586ba4f5a5e7575e1254be8c9bbe303fce9.tar.gz |
Query strings make endpoint caching more difficult since they're order-independent. They are also more likely lost or truncated inadvertantly when copy+pasting, so try to avoid them for default endpoints. There's still some things which are broken and followup commits will be needed to fix them.
Diffstat (limited to 'lib/PublicInbox/RepoGitPatch.pm')
-rw-r--r-- | lib/PublicInbox/RepoGitPatch.pm | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/PublicInbox/RepoGitPatch.pm b/lib/PublicInbox/RepoGitPatch.pm index e9227b6f..d851457c 100644 --- a/lib/PublicInbox/RepoGitPatch.pm +++ b/lib/PublicInbox/RepoGitPatch.pm @@ -17,13 +17,12 @@ sub call_git_patch { my ($self, $req) = @_; my $git = $req->{repo_info}->{git}; my $env = $req->{env}; - my $q = PublicInbox::RepoGitQuery->new($env); - my $id = $q->{id}; - $id =~ /\A[\w-]+([~\^][~\^\d])*\z/ or $id = 'HEAD'; + my $tip = $req->{-tip}; + $tip =~ /\A[\w-]+([~\^][~\^\d])*\z/; # limit scope, don't take extra args to avoid wasting server # resources buffering: - my $range = "$id~1..$id^0"; + my $range = "$tip~1..$tip^0"; my $cmd = $git->cmd(@CMD, $sig." $range", $range, '--'); my $expath = $req->{expath}; push @$cmd, $expath if $expath ne ''; |