Code

xdiff-interface.c: strip newline (and cr) from line before pattern matching
authorBrandon Casey <casey@nrlssc.navy.mil>
Wed, 1 Oct 2008 19:28:26 +0000 (14:28 -0500)
committerShawn O. Pearce <spearce@spearce.org>
Fri, 3 Oct 2008 01:45:53 +0000 (18:45 -0700)
commita5a5a04863036678919705979b9c0f3579fa3710
tree0b077dbc0568d56d30ac726f9f8552be25a8e119
parent52e8370bc7a71366b664ece0a9ec0b79d673a356
xdiff-interface.c: strip newline (and cr) from line before pattern matching

POSIX doth sayeth:

   "In the regular expression processing described in IEEE Std 1003.1-2001,
    the <newline> is regarded as an ordinary character and both a period and
    a non-matching list can match one. ... Those utilities (like grep) that
    do not allow <newline>s to match are responsible for eliminating any
    <newline> from strings before matching against the RE."

Thus far git has not been removing the trailing newline from strings matched
against regular expression patterns. This has the effect that (quoting
Jonathan del Strother) "... a line containing just 'FUNCNAME' (terminated by
a newline) will be matched by the pattern '^(FUNCNAME.$)' but not
'^(FUNCNAME$)'", and more simply not '^FUNCNAME$'.

Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
xdiff-interface.c