From: Robert Fitzsimons Date: Sat, 23 Dec 2006 03:35:14 GMT Subject: [PATCH 1/3] gitweb: Use rev-list pattern search options. Message-ID: <11668449162618-git-send-email-robfitz@273k.net> Use rev-list pattern search options instead of hand coded perl. Signed-off-by: Robert Fitzsimons --- gitweb/gitweb.perl | 20 ++++++++++---------- 1 files changed, 10 insertions(+), 10 deletions(-) diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index ebbc397..cc6bd0c 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -4172,20 +4172,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) { -- 1.4.4.3.gae7ae3