]> git.deb.at Git - deb/packages.git/blobdiff - lib/Packages/Dispatcher.pm
Merge commit 'origin/master' into debian-master
[deb/packages.git] / lib / Packages / Dispatcher.pm
index 4c3c31fc8beabf44c9c055a2be5eec9502968475..037f7f36ace8798d00da5cf2d23cf1edd3bd13d6 100755 (executable)
@@ -138,7 +138,7 @@ sub do_dispatch {
 
     my $what_to_do = 'show';
     my $source = 0;
-    if (my $path = $input->path_info() || $input->param('PATH_INFO')) {
+    if (my $path = $ENV{'PATH_INFO'} || $input->param('PATH_INFO')) {
        my @components = grep { $_ } map { lc $_ } split /\/+/, $path;
 
        debug( "PATH_INFO=$path components=@components", 3) if DEBUG;
@@ -205,8 +205,6 @@ sub do_dispatch {
                    set_param_once( $input, \%params_set, 'archive', $_);
                } elsif (!$need_pkg && $sections_descs{$_}) {
                    set_param_once( $input, \%params_set, 'subsection', $_);
-               } elsif (!$need_pkg && ($_ eq 'non-us')) { # non-US hack
-                   set_param_once( $input, \%params_set, 'subsection', 'non-US');
                } elsif (!$need_pkg && ($_ eq 'source')) {
                    set_param_once( $input, \%params_set, 'source', 1);
                } elsif ($ARCHITECTURES{$_}) {
@@ -316,7 +314,9 @@ Packages::CGI::init_url( $input, \%params, \%opts );
                                             debug => ( DEBUG ? $opts{debug} : 0 ) },
                                           ( $CACHEDIR ? { COMPILE_DIR => $CACHEDIR } : {} ) );
 
-    unless (-e "$TEMPLATEDIR/$opts{format}/${what_to_do}.tmpl") {
+    #FIXME: ugly hack
+    unless (($what_to_do eq 'allpackages' and $opts{format} =~ /^(html|txt\.gz)/)
+            || -e "$TEMPLATEDIR/$opts{format}/${what_to_do}.tmpl") {
        fatal_error( "requested format not available for this document",
                     "406 requested format not available");
     }