gitea/services/gitdiff
zeripath 3d8b5ad5f3
Fix a couple of CommentAsPatch issues. ()
* CutDiffAroundLine makes the incorrect assumption that `---` and `+++` always represent part of the header of a diff.

This PR adds a flag to its parsing to prevent this problem and adds a streaming parsing technique to CutDiffAroundLine using an io.pipe instead of just sending data to an unbounded buffer.

Fix 

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Handle unquoted comment patch files

When making comment patches unfortunately the patch does not always quote the filename
This makes the diff --git header ambiguous again.

This PR finally adds handling for ambiguity in to parse patch

Fix 

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add in testing for no error

There is no way currently for CutDiffAroundLine in this test to cause an
error however, it should still be tested.

Signed-off-by: Andrew Thornton <art27@cantab.net>
..
testdata/academic-module Fix panic when diff ()
gitdiff.go Fix a couple of CommentAsPatch issues. ()
gitdiff_test.go Fix a couple of CommentAsPatch issues. ()
main_test.go Move git diff codes from models to services/gitdiff ()