grep: fix echo "aa" | busybox grep -F -w "a" (should not match)
function old new delta grep_file 1461 1470 +9 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
3be4b9b0de
commit
03fd7e06f8
@ -352,7 +352,7 @@ static int grep_file(FILE *file)
|
|||||||
goto opt_f_not_found;
|
goto opt_f_not_found;
|
||||||
} else
|
} else
|
||||||
if (option_mask32 & OPT_w) {
|
if (option_mask32 & OPT_w) {
|
||||||
char c = (match != str) ? match[-1] : ' ';
|
char c = (match != line) ? match[-1] : ' ';
|
||||||
if (!isalnum(c) && c != '_') {
|
if (!isalnum(c) && c != '_') {
|
||||||
c = match[strlen(gl->pattern)];
|
c = match[strlen(gl->pattern)];
|
||||||
if (!c || (!isalnum(c) && c != '_'))
|
if (!c || (!isalnum(c) && c != '_'))
|
||||||
|
@ -165,6 +165,12 @@ testing "grep -w word doesn't match wordword" \
|
|||||||
"wordword\n" \
|
"wordword\n" \
|
||||||
""
|
""
|
||||||
|
|
||||||
|
testing "grep -F -w w doesn't match ww" \
|
||||||
|
"grep -F -w w input" \
|
||||||
|
"" \
|
||||||
|
"ww\n" \
|
||||||
|
""
|
||||||
|
|
||||||
testing "grep -w word match second word" \
|
testing "grep -w word match second word" \
|
||||||
"grep -w word input" \
|
"grep -w word input" \
|
||||||
"bword,word\n""wordb,word\n""bwordb,word\n" \
|
"bword,word\n""wordb,word\n""bwordb,word\n" \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user