Normally, lines of a diff begin with ` ` (space; line unchanged), `+` (line added), or `-` (line removed).
If an empty line is present in a diff and was not modified, it will normally appear as a line containing a single space in the diff.
Git has a `diff.suppressBlankEmpty` config option which suppresses this space and makes unmodified, empty lines render as a single newline in the diff output instead.
These diffs are parsed and displayed oddly, in a misleading/confusing way. Ideally, desired behavior would be to parse these diffs as though they still has the spaces. If this turns out to be tricky or create ambiguities for whatever reason, an explicit parsing error would be desirable.
Slightly-approxiamte reproduction case:
- Run `git -c diff.suppressBlankEmpty diff -U99999 HEAD` on pretty much any modified file with unchanged, empty lines.
- Copy/paste the resulting diff into the web UI.
- Get a mess in Differential with muddled rendering like this (note that line "59" on the left is three lines tall).
{F6973327}