diff options
author | Junio C Hamano <gitster@pobox.com> | 2012-02-20 00:14:17 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-02-20 00:14:17 -0800 |
commit | 2c8fb23ac73cf1e17245cb58ec429c0b209ab19e (patch) | |
tree | 8933176a38dbed424e8fef1b2b0202438c373d67 | |
parent | Sync with maint (diff) | |
parent | Update draft release notes to 1.7.9.2 (diff) | |
download | tgif-2c8fb23ac73cf1e17245cb58ec429c0b209ab19e.tar.xz |
Merge branch 'maint'
* maint:
Update draft release notes to 1.7.9.2
gitweb: Fix 'grep' search for multiple matches in file
-rw-r--r-- | Documentation/RelNotes/1.7.9.2.txt | 3 | ||||
-rwxr-xr-x | gitweb/gitweb.perl | 3 | ||||
-rwxr-xr-x | t/t9500-gitweb-standalone-no-errors.sh | 39 |
3 files changed, 44 insertions, 1 deletions
diff --git a/Documentation/RelNotes/1.7.9.2.txt b/Documentation/RelNotes/1.7.9.2.txt index 5dd06f2177..3f9467eb89 100644 --- a/Documentation/RelNotes/1.7.9.2.txt +++ b/Documentation/RelNotes/1.7.9.2.txt @@ -24,4 +24,7 @@ Fixes since v1.7.9.1 * Search box in "gitweb" did not accept non-ASCII characters correctly. +* Search interface of "gitweb" did not show multiple matches in the same file + correctly. + Also contains minor fixes and documentation updates. diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 3fc7380a5e..16d376075e 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -5915,9 +5915,10 @@ sub git_search_files { my $alternate = 1; my $matches = 0; my $lastfile = ''; + my $file_href; while (my $line = <$fd>) { chomp $line; - my ($file, $file_href, $lno, $ltext, $binary); + my ($file, $lno, $ltext, $binary); last if ($matches++ > 1000); if ($line =~ /^Binary file (.+) matches$/) { $file = $1; diff --git a/t/t9500-gitweb-standalone-no-errors.sh b/t/t9500-gitweb-standalone-no-errors.sh index 0f771c673d..40a1cb571e 100755 --- a/t/t9500-gitweb-standalone-no-errors.sh +++ b/t/t9500-gitweb-standalone-no-errors.sh @@ -638,6 +638,45 @@ test_expect_success \ 'gitweb_run "p=.git;a=tree"' # ---------------------------------------------------------------------- +# searching + +cat >>gitweb_config.perl <<\EOF + +# enable search +$feature{'search'}{'default'} = [1]; +$feature{'grep'}{'default'} = [1]; +$feature{'pickaxe'}{'default'} = [1]; +EOF + +test_expect_success \ + 'search: preparation' \ + 'echo "1st MATCH" >>file && + echo "2nd MATCH" >>file && + echo "MATCH" >>bar && + git add file bar && + git commit -m "Added MATCH word"' + +test_expect_success \ + 'search: commit author' \ + 'gitweb_run "p=.git;a=search;h=HEAD;st=author;s=A+U+Thor"' + +test_expect_success \ + 'search: commit message' \ + 'gitweb_run "p=.git;a=search;h=HEAD;st=commitr;s=MATCH"' + +test_expect_success \ + 'search: grep' \ + 'gitweb_run "p=.git;a=search;h=HEAD;st=grep;s=MATCH"' + +test_expect_success \ + 'search: pickaxe' \ + 'gitweb_run "p=.git;a=search;h=HEAD;st=pickaxe;s=MATCH"' + +test_expect_success \ + 'search: projects' \ + 'gitweb_run "a=project_list;s=.git"' + +# ---------------------------------------------------------------------- # non-ASCII in README.html test_expect_success \ |