Thread (2 messages) flat view 2 messages, 2 authors, 2016-06-15

Re: [PATCH v2 1/2] Allow git-apply to ignore the hunk headers

From: Sergei Organov <hidden>
Date: 2016-06-15 22:44:42

Junio C Hamano [off-list ref] writes:
Johannes Schindelin [off-list ref] writes:
quoted
quoted
And the robustness issue I worry about the second point also applies to 
a line that is "^-- $", especially if we were to make this available to 
git-am.  Perhaps when the line begins with a '-', the logic could be 
extra careful to detect the case where the line looks like the e-mail 
signature separator and check one line beyond it to see if it does not 
look anything like part of a diff (in which case you stop, without 
considering the line you are currently looking at, "^-- $", a deletion 
of "^- $", as part of the preimage context).
Is this really an issue?  fixup_counts() is only called after a hunk 
header was read, and that should be well after any "^-- $".
Are you talking about "^-- $" or "^---$"?  Yes we are way past the
three-dash separator at this point, but e-mail signature separator happens
at the very end after the patch.

You read a hunk header line "@@ -l,m +n,o @@", and start counting the diff
text because you do not trust m and o.  When you read the last hunk in a
patch e-mail, you may hit a e-mail signature separator, like what is given
by format-patch output at the end.  Mistaking that as an extra preimage
context to remove "^- $" is what I was worried about.
Don't you think it's time to fix git-format-patch to put some reliable
"end-of-patch" marker line before the signature? This change (along with
refusal to generate brain-damaged empty lines inside hunks) will make
git diffs easily parseable without information from hunk headers.

-- Sergei.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help