2 Commits

Author SHA1 Message Date
Billy Keyes 4f540371d0 Return errors for empty text fragments (#29)
This fixes two issues:

  1. Fragments with only context lines were accepted
  2. Fragments with only a "no newline" marker caused a panic

The panic was found by go-fuzz. While fixing that issue, I
discovered the first problem with other types of empty fragments while
comparing behavior against 'git apply'.

Also extract some helper functions and modify the loop conditions to
clean things up while making changes in this area.
2021-09-12 15:51:00 -07:00
Billy Keyes 1c950ee854 Split source files by patch type (text/binary)
The tests were already split up in this way, so it makes sense to have
the parsing functions split as well.
2019-04-17 21:36:46 -07:00