Module Name:    src
Committed By:   wiz
Date:           Fri Sep  9 22:14:29 UTC 2022

Modified Files:
        src/distrib/sets/lists/tests: mi
        src/external/gpl2/grep/dist/doc: grep.1
        src/external/gpl2/grep/dist/src: grep.c
        src/tests/usr.bin/grep: Makefile t_grep.sh
Added Files:
        src/tests/usr.bin/grep: d_recurse_noarg.out

Log Message:
grep: when -r is used, but no path argument provided, search the current dir

As discussed on tech-userlevel.


To generate a diff of this commit:
cvs rdiff -u -r1.1222 -r1.1223 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.2 -r1.3 src/external/gpl2/grep/dist/doc/grep.1
cvs rdiff -u -r1.4 -r1.5 src/external/gpl2/grep/dist/src/grep.c
cvs rdiff -u -r1.1 -r1.2 src/tests/usr.bin/grep/Makefile
cvs rdiff -u -r0 -r1.1 src/tests/usr.bin/grep/d_recurse_noarg.out
cvs rdiff -u -r1.6 -r1.7 src/tests/usr.bin/grep/t_grep.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/tests/mi
diff -u src/distrib/sets/lists/tests/mi:1.1222 src/distrib/sets/lists/tests/mi:1.1223
--- src/distrib/sets/lists/tests/mi:1.1222	Sat Sep  3 03:33:37 2022
+++ src/distrib/sets/lists/tests/mi	Fri Sep  9 22:14:28 2022
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1222 2022/09/03 03:33:37 rillig Exp $
+# $NetBSD: mi,v 1.1223 2022/09/09 22:14:28 wiz Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 #
@@ -4750,6 +4750,7 @@
 ./usr/tests/usr.bin/grep/d_invert.in			tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/grep/d_invert.out			tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/grep/d_recurse.out			tests-usr.bin-tests	compattestfile,atf
+./usr/tests/usr.bin/grep/d_recurse_noarg.out		tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/grep/d_recurse_symlink.err		tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/grep/d_recurse_symlink.out		tests-usr.bin-tests	compattestfile,atf
 ./usr/tests/usr.bin/grep/d_whole_line.out		tests-usr.bin-tests	compattestfile,atf

Index: src/external/gpl2/grep/dist/doc/grep.1
diff -u src/external/gpl2/grep/dist/doc/grep.1:1.2 src/external/gpl2/grep/dist/doc/grep.1:1.3
--- src/external/gpl2/grep/dist/doc/grep.1:1.2	Sun Jan 10 22:16:40 2016
+++ src/external/gpl2/grep/dist/doc/grep.1	Fri Sep  9 22:14:29 2022
@@ -1,8 +1,8 @@
-.\"	$NetBSD: grep.1,v 1.2 2016/01/10 22:16:40 christos Exp $
+.\"	$NetBSD: grep.1,v 1.3 2022/09/09 22:14:29 wiz Exp $
 .\"
 .\" grep man page
 .\"d Id: grep.1,v 1.23 2002/01/22 13:20:04 bero Exp 
-.TH GREP 1 "June 16 2003" "GNU Project"
+.TH GREP 1 "September 3 2022" "GNU Project"
 .SH NAME
 grep, egrep, fgrep \- print lines matching a pattern
 .SH SYNOPSIS
@@ -312,6 +312,11 @@ Read all files under each directory, rec
 this is equivalent to the
 .B "\-d recurse"
 option.
+If no
+.IR FILE
+is given,
+.BR grep
+searches the current working directory.
 .TP
 .BR "\fR \fP \-\^\-include=" PATTERN
 Recurse in directories only searching file matching

Index: src/external/gpl2/grep/dist/src/grep.c
diff -u src/external/gpl2/grep/dist/src/grep.c:1.4 src/external/gpl2/grep/dist/src/grep.c:1.5
--- src/external/gpl2/grep/dist/src/grep.c:1.4	Tue Dec 28 19:22:58 2021
+++ src/external/gpl2/grep/dist/src/grep.c	Fri Sep  9 22:14:29 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: grep.c,v 1.4 2021/12/28 19:22:58 christos Exp $	*/
+/*	$NetBSD: grep.c,v 1.5 2022/09/09 22:14:29 wiz Exp $	*/
 
 /* grep.c - main driver file for grep.
    Copyright 1992, 1997-1999, 2000 Free Software Foundation, Inc.
@@ -1764,10 +1764,8 @@ warranty; not even for MERCHANTABILITY o
     }
   else
     {
-      if (directories == RECURSE_DIRECTORIES) {
-	error (0, 0, _("warning: recursive search of stdin"));
-      }
-      status = grepfile ((char *) NULL, &stats_base);
+      status = grepfile(directories == RECURSE_DIRECTORIES ? "." : (char *) NULL,
+			&stats_base);
     }
 
   /* We register via atexit() to test stdout.  */

Index: src/tests/usr.bin/grep/Makefile
diff -u src/tests/usr.bin/grep/Makefile:1.1 src/tests/usr.bin/grep/Makefile:1.2
--- src/tests/usr.bin/grep/Makefile:1.1	Sat Mar 17 16:33:13 2012
+++ src/tests/usr.bin/grep/Makefile	Fri Sep  9 22:14:29 2022
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.1 2012/03/17 16:33:13 jruoho Exp $
+# $NetBSD: Makefile,v 1.2 2022/09/09 22:14:29 wiz Exp $
 
 NOMAN=		# defined
 
@@ -30,6 +30,7 @@ FILES+=		d_input
 FILES+=		d_invert.in
 FILES+=		d_invert.out
 FILES+=		d_recurse.out
+FILES+=		d_recurse_noarg.out
 FILES+=		d_recurse_symlink.err
 FILES+=		d_recurse_symlink.out
 FILES+=		d_whole_line.out

Index: src/tests/usr.bin/grep/t_grep.sh
diff -u src/tests/usr.bin/grep/t_grep.sh:1.6 src/tests/usr.bin/grep/t_grep.sh:1.7
--- src/tests/usr.bin/grep/t_grep.sh:1.6	Mon Aug 30 23:14:14 2021
+++ src/tests/usr.bin/grep/t_grep.sh	Fri Sep  9 22:14:29 2022
@@ -1,4 +1,4 @@
-# $NetBSD: t_grep.sh,v 1.6 2021/08/30 23:14:14 rillig Exp $
+# $NetBSD: t_grep.sh,v 1.7 2022/09/09 22:14:29 wiz Exp $
 #
 # Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -31,7 +31,7 @@ basic_head()
 	atf_set "descr" "Checks basic functionality"
 }
 basic_body()
-{ 
+{
 	atf_check -o file:"$(atf_get_srcdir)/d_basic.out" -x \
 	    'jot 10000 | grep 123'
 }
@@ -62,6 +62,20 @@ recurse_body()
 	atf_check -o file:"$(atf_get_srcdir)/d_recurse.out" -x "grep -r haddock recurse | sort"
 }
 
+atf_test_case recurse_noarg
+recurse_noarg_head()
+{
+	atf_set "descr" "Checks recursive searching without file argument"
+}
+recurse_noarg_body()
+{
+	mkdir -p recurse/a/f recurse/d
+	echo -e "cod\ndover sole\nhaddock\nhalibut\npilchard" > recurse/d/fish
+	echo -e "cod\nhaddock\nplaice" > recurse/a/f/favourite-fish
+
+	atf_check -o file:"$(atf_get_srcdir)/d_recurse_noarg.out" -x "cd recurse && grep -r haddock | sort"
+}
+
 atf_test_case recurse_symlink
 recurse_symlink_head()
 {
@@ -329,9 +343,10 @@ context2_body()
 
 atf_init_test_cases()
 {
-	atf_add_test_case basic 
+	atf_add_test_case basic
 	atf_add_test_case binary
 	atf_add_test_case recurse
+	atf_add_test_case recurse_noarg
 	atf_add_test_case recurse_symlink
 	atf_add_test_case word_regexps
 	atf_add_test_case word_locale

Added files:

Index: src/tests/usr.bin/grep/d_recurse_noarg.out
diff -u /dev/null src/tests/usr.bin/grep/d_recurse_noarg.out:1.1
--- /dev/null	Fri Sep  9 22:14:29 2022
+++ src/tests/usr.bin/grep/d_recurse_noarg.out	Fri Sep  9 22:14:29 2022
@@ -0,0 +1,2 @@
+./a/f/favourite-fish:haddock
+./d/fish:haddock

Reply via email to