From: Lea Wiemann Date: Tue, 27 May 2008 23:25:42 +0000 (+0200) Subject: gitweb: only display "next" links in logs if there is a next page X-Git-Url: https://git.ladys.computer/Gitweb/commitdiff_plain/e926fe23df47ef0bc75403262fd87ca167147167af4b572007e74f6dbc0fd96f gitweb: only display "next" links in logs if there is a next page There was a bug in the implementation of the "next" links in format_paging_nav (for log and shortlog), which caused the next links to always be displayed, even if there is no next page. This fixes it. Signed-off-by: Lea Wiemann Signed-off-by: Junio C Hamano --- diff --git a/gitweb.perl b/gitweb.perl index d3950f5..a97c2ec 100755 --- a/gitweb.perl +++ b/gitweb.perl @@ -2757,7 +2757,7 @@ sub git_print_page_nav { } sub format_paging_nav { - my ($action, $hash, $head, $page, $nrevs) = @_; + my ($action, $hash, $head, $page, $has_next_link) = @_; my $paging_nav; @@ -2775,7 +2775,7 @@ sub format_paging_nav { $paging_nav .= " ⋅ prev"; } - if ($nrevs >= (100 * ($page+1)-1)) { + if ($has_next_link) { $paging_nav .= " ⋅ " . $cgi->a({-href => href(-replay=>1, page=>$page+1), -accesskey => "n", -title => "Alt-n"}, "next"); @@ -4666,7 +4666,7 @@ sub git_log { my @commitlist = parse_commits($hash, 101, (100 * $page)); - my $paging_nav = format_paging_nav('log', $hash, $head, $page, (100 * ($page+1))); + my $paging_nav = format_paging_nav('log', $hash, $head, $page, $#commitlist >= 100); git_header_html(); git_print_page_nav('log','', $hash,undef,undef, $paging_nav); @@ -5586,7 +5586,7 @@ sub git_shortlog { my @commitlist = parse_commits($hash, 101, (100 * $page)); - my $paging_nav = format_paging_nav('shortlog', $hash, $head, $page, (100 * ($page+1))); + my $paging_nav = format_paging_nav('shortlog', $hash, $head, $page, $#commitlist >= 100); my $next_link = ''; if ($#commitlist >= 100) { $next_link =