Skip to content

Commit

Permalink
Merge branch 'jn/gitweb-unspecified-action'
Browse files Browse the repository at this point in the history
* jn/gitweb-unspecified-action:
  gitweb: Fix actionless dispatch for non-existent objects
  • Loading branch information
gitster committed Jan 29, 2012
2 parents 7b718fb + 18ab83e commit 77cdf0f
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 1 deletion.
4 changes: 3 additions & 1 deletion gitweb/gitweb.perl
Original file line number Diff line number Diff line change
Expand Up @@ -1123,8 +1123,10 @@ sub dispatch {
if (!defined $action) {
if (defined $hash) {
$action = git_get_type($hash);
$action or die_error(404, "Object does not exist");
} elsif (defined $hash_base && defined $file_name) {
$action = git_get_type("$hash_base:$file_name");
$action or die_error(404, "File or directory does not exist");
} elsif (defined $project) {
$action = 'summary';
} else {
Expand Down Expand Up @@ -2391,7 +2393,7 @@ sub get_feed_info {
return unless (defined $project);
# some views should link to OPML, or to generic project feed,
# or don't have specific feed yet (so they should use generic)
return if ($action =~ /^(?:tags|heads|forks|tag|search)$/x);
return if (!$action || $action =~ /^(?:tags|heads|forks|tag|search)$/x);

my $branch;
# branches refs uses 'refs/heads/' prefix (fullname) to differentiate
Expand Down
8 changes: 8 additions & 0 deletions t/t9500-gitweb-standalone-no-errors.sh
Original file line number Diff line number Diff line change
Expand Up @@ -474,6 +474,14 @@ test_expect_success \
'path_info: project/branch:dir/' \
'gitweb_run "" "/.git/master:foo/"'

test_expect_success \
'path_info: project/branch (non-existent)' \
'gitweb_run "" "/.git/non-existent"'

test_expect_success \
'path_info: project/branch:filename (non-existent branch)' \
'gitweb_run "" "/.git/non-existent:non-existent"'

test_expect_success \
'path_info: project/branch:file (non-existent)' \
'gitweb_run "" "/.git/master:non-existent"'
Expand Down

0 comments on commit 77cdf0f

Please sign in to comment.