X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FGitalist%2FController%2FFragment%2FRef.pm;h=c079eb0e85a42ef01983a7a9d7f38bb2965075a0;hb=7998de1265a0e9b2bddd66ab3ee57553e2fdef6a;hp=24e8d5897311a025c972bad5290f2a471d903a85;hpb=18fdf3d00ec24d1ce236e0da9355ad30d780071c;p=catagits%2FGitalist.git diff --git a/lib/Gitalist/Controller/Fragment/Ref.pm b/lib/Gitalist/Controller/Fragment/Ref.pm index 24e8d58..c079eb0 100644 --- a/lib/Gitalist/Controller/Fragment/Ref.pm +++ b/lib/Gitalist/Controller/Fragment/Ref.pm @@ -10,13 +10,15 @@ with qw/ sub base : Chained('/fragment/repository/find') PathPart('') CaptureArgs(0) {} -after diff => sub { +sub _diff { my ($self, $c) = @_; my $commit = $c->stash->{Commit}; + my %filename = $c->stash->{filename} ? (filename => $c->stash->{filename}) : (); my($tree, $patch) = $c->stash->{Repository}->diff( commit => $commit, - parent => $c->req->param('hp') || undef, + parent => $c->stash->{parent}, patch => 1, + %filename, ); $c->stash( diff_tree => $tree, @@ -24,16 +26,19 @@ after diff => sub { # XXX Hack hack hack, see View::SyntaxHighlight blobs => [map $_->{diff}, @$patch], language => 'Diff', + %filename, ); -}; +} after diff_fancy => sub { my ($self, $c) = @_; + $self->_diff($c); $c->forward('View::SyntaxHighlight'); }; after diff_plain => sub { my ($self, $c) = @_; + $self->_diff($c); $c->response->content_type('text/plain; charset=utf-8'); };