From: Robert Fitzsimons Date: Sat, 23 Dec 2006 03:35:14 +0000 (+0000) Subject: gitweb: Use rev-list pattern search options. X-Git-Tag: v1.5.0-rc0~22 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=8e574fb542eaf7f41d5416b2cf65b5c2e93829d6;p=git.git gitweb: Use rev-list pattern search options. Use rev-list pattern search options instead of hand coded perl. Signed-off-by: Robert Fitzsimons Signed-off-by: Junio C Hamano --- diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index b0e6fdfb9..c1e8bbc3c 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -4176,20 +4176,20 @@ sub git_search { print "\n"; my $alternate = 1; if ($searchtype eq 'commit' or $searchtype eq 'author' or $searchtype eq 'committer') { + my $greptype; + if ($searchtype eq 'commit') { + $greptype = "--grep="; + } elsif ($searchtype eq 'author') { + $greptype = "--author="; + } elsif ($searchtype eq 'committer') { + $greptype = "--committer="; + } $/ = "\0"; open my $fd, "-|", git_cmd(), "rev-list", - "--header", "--parents", $hash, "--" + "--header", "--parents", ($greptype . $searchtext), + $hash, "--" or next; while (my $commit_text = <$fd>) { - if (!grep m/$searchtext/i, $commit_text) { - next; - } - if ($searchtype eq 'author' && !grep m/\nauthor .*$searchtext/i, $commit_text) { - next; - } - if ($searchtype eq 'committer' && !grep m/\ncommitter .*$searchtext/i, $commit_text) { - next; - } my @commit_lines = split "\n", $commit_text; my %co = parse_commit(undef, \@commit_lines); if (!%co) {