summaryrefslogtreecommitdiff
path: root/commit.c
diff options
context:
space:
mode:
authorEric Sunshine <sunshine@sunshineco.com>2021-12-13 01:30:56 -0500
committerJunio C Hamano <gitster@pobox.com>2021-12-13 14:15:29 -0800
commit22597af97d67660fb3f0dba538a1f02b1ba94243 (patch)
tree6950a948a7fd5ab9aa11dd5297c5b0143d62f555 /commit.c
parent2d53614210919c2a4eac4a03e9d34da7b9e7ff31 (diff)
chainlint.sed: don't mistake `<< word` in string as here-doc operator
Tighten here-doc recognition to prevent it from being fooled by text which looks like a here-doc operator but happens merely to be the content of a string, such as this real-world case from t7201: echo "<<<<<<< ours" && echo ourside && echo "=======" && echo theirside && echo ">>>>>>> theirs" This problem went unnoticed because chainlint.sed is not a real parser, but rather applies heuristics to pretend to understand shell code. In this case, it saw what it thought was a here-doc operator (`<< ours`), and fell off the end of the test looking for the closing tag "ours" which it never found, thus swallowed the remainder of the test without checking it for &&-chain breakage. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit.c')
0 files changed, 0 insertions, 0 deletions