Opened 9 years ago
Closed 9 years ago
#3905 closed task (fixed)
grep-2.24
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Milestone: | 7.10 |
Component: | Book | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description
New minor version
grep -z would match strings it should not. To trigger the bug, you'd have to use a regular expression including an anchor (^ or $) and a feature like a range or a backreference, causing grep to forego its DFA matcher and resort to using re_search. With a multibyte locale, that matcher could mistakenly match a string containing a newline. For example, this command: printf 'a\nb\0' | LC_ALL=en_US.utf-8 grep -z '^[a-b]*b' would mistakenly match and print all four input bytes. After the fix, there is no match, as expected. [bug introduced in grep-2.7] grep -Pz now diagnoses attempts to use patterns containing ^ and $, instead of mishandling these patterns. This problem seems to be inherent to the PCRE API; removing this limitation is on PCRE's maint/README wish list. Patterns can continue to match literal ^ and $ by escaping them with \ (now needed even inside [...]). [bug introduced in grep-2.5]
Change History (2)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Note:
See TracTickets
for help on using tickets.
Fixed at revision 11042.