summaryrefslogtreecommitdiff
path: root/usr.bin/grep
AgeCommit message (Collapse)Author
2006-03-07Break patterns containing newlines into multiple patterns like POSIX says.Otto Moerbeek
Report by Ralf dot Wildenhues at gmx dot de; testing by jmc@ ok beck@ millert@
2006-03-07-nv is a valid combination; confirmed by ottoJason McIntyre
2006-02-09delint; remove redundant vars and functions; ok jaredy@Otto Moerbeek
2006-02-07restore cosmic balance by plugging a mem leak; problem reported byOtto Moerbeek
Benjamin Pineau in PR 5008; ok weingart@
2005-06-05s/-p1003.1-2003/-p1003.1-2004/gJason McIntyre
2005-04-25- use size_t where appropriate.Otto Moerbeek
- check for <= 0 in gzread; it returns -1 on error. From christos@netbsd; ok millert@
2005-04-03Make the processing of patterns collected from files specified by -fJared Yanovich
delayed so options that affect pattern-building (such as -w) can be applied evenly to all such patterns. ok and help otto, ok millert
2005-04-03Protect begin and end of word markers added to the pattern whenOtto Moerbeek
using the -w option with parentheses, to avoid operators in the expressions binding to the markers. Compare [[:<:]]foo|bar[[:>:]] and [[:<:]](foo|bar)[[:>:]]. Problem spotted by aaron@; ok millert@ aaron@ jaredy@
2005-02-07Due to a braindead zlib, the test for seekability of a gzstream usingOtto Moerbeek
gzseek(f, 0L, SEEK_CUR) does not work as expected. Instead test the underlying stream and remember that. This repairs echo foo | gzip | zgrep foo. Problem spotted by Han Boetes in PR 4089; ok millert@
2005-02-02replace 0 with STDIN_FILENO. from han boetes and jared yanovichTed Unangst
2005-01-06clarify what -a does;Jason McIntyre
prod and ok deraadt@
2004-10-04remove the section on extended regular expressions, and pointJason McIntyre
people instead to re_format.7: there is now a list of EREs there;
2004-10-03Remove block based mmap optimization. There are newline problemsOtto Moerbeek
(PR 3940, 3941) which can be fixed, but if a match starts at the end of a block and continues into the next block, no match will be found. Measurements by millert@ showed that the improvements of this optimization are non-measurable anyway. Diff from Alexander Taler. ok millert@
2004-09-28when stdin is searched, -L and -l print `(standard input)', not `-';Jason McIntyre
from alexander taler (pr #3937);
2004-09-28various fixes to make this page a bit clearer and hopefully a bitJason McIntyre
more helpful; this includes some ideas/fixes from otto and jared;
2004-09-16unused variables; otto okTheo de Raadt
2004-09-15cast offset value correctly for gzseekTheo de Raadt
2004-08-11Stop search when -q option is given and a match is found. Found by jmc@Otto Moerbeek
ok millert@
2004-08-05spacingTheo de Raadt
2004-05-07Make grep -w behave the same for the fastcomp and the regex case,Otto Moerbeek
by teaching fastcomp what word boundaries are according to regex. ok millert@
2004-05-07Add a new past path for fgrep that is just a simplified version ofTodd C. Miller
fastcomp. This makes fgrep faster and fixes the -w flag w/ fgrep. Also remove free_patterns() since calling free right before exit is silly. Problem noticed by espie@
2004-05-06Don't fseek() on stdin if it is a terminal. It does not fail, butOtto Moerbeek
what's more more important, it does not work either. ok millert@ tedu@
2004-05-06Treat ^H as non-binary. OK hshoexer@, brad@ and deraadt@Todd C. Miller
2004-04-17-w uses [[:<:]] and [[:>:]], not \< and \>,Jason McIntyre
and it's documented in re_format(7), not ex(1); from jared yanovich; ok beck@
2004-04-03remove unnecessary .Sm macros (oops, this is my fault it everJason McIntyre
made it into the tree);
2004-04-02Document --line-bufferedOtto Moerbeek
ok jmc@
2004-04-02Implement --line-bufferedOtto Moerbeek
ok millert@ tedu@
2004-03-15simpler special character list. provoked by Patrick Latifi ok jmc@Ted Unangst
2004-02-04Fix anchors (^ or $) in -w mode broken by the last commit's -w overhaul.Todd C. Miller
With this change we pass the updated regress. Tested and OK by ho@
2004-01-26dataLen should be size_t to match l->len; ok otto@ tedu@Todd C. Miller
2004-01-25Previously, in -w mode, for each match on a line grep would checkTodd C. Miller
to see if the match was on a word boundary. However, this missed lines where the first match was not on a word boundary but a subsequent match was. Problem originally spotted by miod@ We fix this by using the [[:<:]] and [[:>:]] character classes for the slow path and by checking the word boundaries in grep_search() for the fast path instead of doing the checks after running regexec() or grep_search(). With this change, grep passes the new regress tests 15 and 16. problem originally spotted by espie@.
2004-01-19-b reports offsets in bytes.Otto Moerbeek
ok millert@
2004-01-19Use off_t for file sizes, and don't forget to print a ':' when usingOtto Moerbeek
the -b option. ok millert@
2004-01-18Unbreak *grep -w -l. ok millert@Otto Moerbeek
2004-01-18make sure ln.len gets initialized. Okay millert@Marc Espie
2003-12-29fix zgrep failure when the uncompressed file begins with a newlineCan Erkin Acar
also, search from the beginning if a stream or compressed file is identified as 'binary'. ok millert@, reported by tedu@, tested by jose@
2003-12-11Sync usage() with SYNOPSIS in grep(1).Ryan Thomas McBride
ok deraadt@ jmc@
2003-12-11Document use of [pattern] without -e, give example of -v with multipleRyan Thomas McBride
patterns. ok deraadt@ jmc@
2003-12-06Unbreak grepping for some patterns containing multiple dots. Fixes PR 3597.Otto Moerbeek
ok deraadt@ millert@
2003-10-28prototype declared static, but function was not. add static to function.Anil Madhavapeddy
millert@ otto@ ok
2003-10-20typos from Jared Yanovich;Jason McIntyre
2003-09-27Correct wording on -C option.Ryan Thomas McBride
ok jmc@
2003-09-18make this test look for spaces as well, to match other casesBob Beck
ok fgs@ ok deraadt@
2003-09-09mmap returns MAP_FAILED on failure. fixes hugh@'s crash. ok deraadt@Ted Unangst
2003-09-07Fix "grep -number" support for multi-digit numbers. At issue isTodd C. Miller
the fact that optind refers to the *next* argument to be consumed by getopt(), not the current one. This means we have to keep track of when we are working with a new argv entry by hand. OK hugh@
2003-09-07extend ascii test for more accuracy. ok deraadt@ pb@Ted Unangst
2003-08-20Add curly braces {} to the list of special characters in egrep mode.Todd C. Miller
From Piotr Domagalski, closes PR 3405
2003-08-11typo, pr3396 from piotr domagalskiTed Unangst
2003-07-20After some discussion on icb it seems a do {} while is what we wantTodd C. Miller
after all since there's no need to check an invariant the first time through. I've fixed the loop invariants (we need to take special care with the "j == fg->patternLen" case) and hopefully made things a tad bit clearer. tedu@ OK
2003-07-20Close PR 3358 by changing the loop from do {} while -> for; tdeval@ OKTodd C. Miller