- 21 Mar, 2017 1 commit
-
-
While parsing patch header lines, we iterate over each line and check if the line has trailing garbage. What we do not check though is that the line is actually a line ending with a trailing newline. Fix this by checking the return code of `parse_advance_expected_str`.
Patrick Steinhardt committed
-
- 14 Mar, 2017 1 commit
-
-
In a diff, the shortest possible hunk with a modification (that is, no deletion) results from a file with only one line with a single character which is removed. Thus the following hunk @@ -1 +1 @@ -a + is the shortest valid hunk modifying a line. The function parsing the hunk body though assumes that there must always be at least 4 bytes present to make up a valid hunk, which is obviously wrong in this case. The absolute minimum number of bytes required for a modification is actually 2 bytes, that is the "+" and the following newline. Note: if there is no trailing newline, the assumption will not be offended as the diff will have a line "\ No trailing newline" at its end. This patch fixes the issue by lowering the amount of bytes required.
Patrick Steinhardt committed
-
- 15 Nov, 2016 1 commit
-
-
Patrick Steinhardt committed
-
- 14 Nov, 2016 1 commit
-
-
Patrick Steinhardt committed
-
- 05 Sep, 2016 1 commit
-
-
When creating and printing diffs, deal with binary deltas that have binary data specially, versus diffs that have a binary file but lack the actual binary data.
Edward Thomson committed
-
- 24 Aug, 2016 1 commit
-
-
Ensure that `git_patch_from_diff` can return the patch for parsed diffs, not just generate a patch for a generated diff.
Edward Thomson committed
-
- 03 Aug, 2016 1 commit
-
-
Move `id_abbrev` to a more reasonable place where it packs more nicely (before anybody starts using it).
Edward Thomson committed
-
- 24 Jul, 2016 1 commit
-
-
Edward Thomson committed
-
- 26 Jun, 2016 2 commits
-
-
When showing copy information because we are duplicating contents, for example, when performing a `diff --find-copies-harder -M100 -B100`, then show copy from/to lines in a patch, and do not show context. Ensure that we can also parse such patches.
Edward Thomson committed -
Patches may have no hunks when there's no modifications (for example, in a rename). Handle them.
Edward Thomson committed
-
- 26 May, 2016 23 commits
-
-
Edward Thomson committed
-
Edward Thomson committed
-
Parse diff files into a `git_diff` structure.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Handle prefixes (in terms of number of path components) for patch parsing.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-
When a text file is added or deleted, use the file names from the `diff --git` header instead of the `---` or `+++` lines. This is for compatibility with git.
Edward Thomson committed -
We may have parsed binary data, set the `SHOW_BINARY` flag which indicates that we have actually computed a binary diff.
Edward Thomson committed -
Edward Thomson committed
-
Now that `git_diff_delta` data can be produced by reading patch file data, which may have an abbreviated oid, allow consumers to know that the id is abbreviated.
Edward Thomson committed -
Edward Thomson committed
-
No need to replicate the old_file/new_file members, or plumb them strangely up.
Edward Thomson committed -
Patches can now come from a variety of sources - either internally generated (from diffing two commits) or as the results of parsing some external data.
Edward Thomson committed -
Edward Thomson committed
-
Edward Thomson committed
-