From: Mark Rada Date: Tue, 25 Aug 2009 04:59:48 +0000 (-0400) Subject: gitweb: improve snapshot error handling X-Git-Tag: v1.6.5-rc0~17^2~2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=34b31a8d5f48283ec3039777b24706585b4f9d41;p=git.git gitweb: improve snapshot error handling The last check in the second block of checks in the &git_snapshot routine is never executed because the second to last check is a superset of the last check. Switch the order of the last two checks. It has the advantage of giving clients a more specific reason why they cannot get a snapshot format if the format they have chosen is disabled. Signed-off-by: Mark Rada Signed-off-by: Junio C Hamano --- diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 84659f567..b453ed045 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -5175,10 +5175,10 @@ sub git_snapshot { die_error(400, "Invalid snapshot format parameter"); } elsif (!exists($known_snapshot_formats{$format})) { die_error(400, "Unknown snapshot format"); - } elsif (!grep($_ eq $format, @snapshot_fmts)) { - die_error(403, "Unsupported snapshot format"); } elsif ($known_snapshot_formats{$format}{'disabled'}) { die_error(403, "Snapshot format not allowed"); + } elsif (!grep($_ eq $format, @snapshot_fmts)) { + die_error(403, "Unsupported snapshot format"); } if (!defined $hash) {