https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218806

            Bug ID: 218806
           Summary: bsdgrep(1)'s -o flag with context is completely wrong
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]

Compare, with d_context_a.in from /usr/tests/usr.bin/grep:

$ gnugrep -C1 -o pig d_context_a.in               
pig
pig
--
pig
pig
pig
# Behavior is same on newer gnugrep.
$ grep -C1 -o pig d_context_a.in 
pig
Boar, sow, barrow, or gilt --
pig
Though mountains may topple and tilt.
--
Though you may be thrown over by Tabby and Rover,
pig
pig
pig
                -- Thomas Pynchon, "Gravity's Rainbow"
# Ugh

I note here that it *looks* like we should do all of the normal context
behavior but not actually print the context, just the lines that actually
matched and the separators that comes with context. I'll have to create some
further test cases for different scenarios of overlapping/adjacency behavior of
both matching lines and non-matching lines to make sure that's right.

This is likely a really strange corner case that probably won't have any
practical application, but consistency is good.

-- 
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"

Reply via email to