X-Git-Url: https://git.deb.at/?a=blobdiff_plain;f=lib%2FPackages%2FDispatcher.pm;h=c247be94d3a4fb1685d42b21849b82a038cdf2e6;hb=HEAD;hp=484e222f02bd0e433038c329309fa240a2119beb;hpb=d335139f37934f9128a39ffd0933a163fb71cce7;p=deb%2Fpackages.git diff --git a/lib/Packages/Dispatcher.pm b/lib/Packages/Dispatcher.pm index 484e222..c247be9 100755 --- a/lib/Packages/Dispatcher.pm +++ b/lib/Packages/Dispatcher.pm @@ -101,8 +101,9 @@ sub do_dispatch { $last_modified = $now if $now - $last_modified < 3600; if ($input->http('If-Modified-Since') and - (my $modtime = str2time($input->http('If-Modified-Since'), 'UTC'))) { - if ($modtime <= $last_modified) { + (my $client_timestamp = str2time($input->http('If-Modified-Since'), 'UTC'))) { + if ($client_timestamp >= $last_modified) { + # we are not modified since asked -> return "304 Not Modified" print $input->header(-status => 304); exit; } @@ -177,7 +178,11 @@ sub do_dispatch { } elsif (@components == 0) { fatal_error( "We're supposed to display the homepage here, instead of getting dispatch.pl" ); } elsif (@components == 1) { - $what_to_do = 'search'; + if ($components[0] eq 'index') { + $what_to_do = 'homepage'; + } else { + $what_to_do = 'search'; + } } else { for ($components[-1]) {