Re: [PATCH] send-email: avoid duplicate In-Reply-To/References
On 18.04.2018 02:54, Eric Wong wrote: > Stefan Agnerwrote: >> This addresses the issue reported here: >> https://public-inbox.org/git/997160314bbafb3088a401f1c09cc...@agner.ch/ > > Thanks for bringing this up. > >> --- a/git-send-email.perl >> +++ b/git-send-email.perl >> @@ -1642,10 +1642,15 @@ foreach my $t (@files) { >> elsif (/^Content-Transfer-Encoding: (.*)/i) { >> $xfer_encoding = $1 if not defined >> $xfer_encoding; >> } >> +elsif (/^In-Reply-To: (.*)/i) { >> +$in_reply_to = $1; >> +} >> +elsif (/^References: (.*)/i) { >> +$references = $1; >> +} > > References: can span multiple lines with --thread=deep in format-patch > (technically any header can be, but References: is common) I think that is ok because we do # First unfold multiline header fields ... A quick test with 3 patches in --thread=deep mode looks good: In-Reply-To: <87d48c04aae0594ebea7567827d08979ad346380.1524034203.git.ste...@agner.ch> References: <06ea66574abfb2dd66adee9996e5fb66903b95a3.1524034203.git.ste...@agner.ch> <87d48c04aae0594ebea7567827d08979ad346380.1524034203.git.ste...@agner.ch> -- Stefan
Re: [PATCH] send-email: avoid duplicate In-Reply-To/References
Stefan Agnerwrote: > This addresses the issue reported here: > https://public-inbox.org/git/997160314bbafb3088a401f1c09cc...@agner.ch/ Thanks for bringing this up. > --- a/git-send-email.perl > +++ b/git-send-email.perl > @@ -1642,10 +1642,15 @@ foreach my $t (@files) { > elsif (/^Content-Transfer-Encoding: (.*)/i) { > $xfer_encoding = $1 if not defined > $xfer_encoding; > } > + elsif (/^In-Reply-To: (.*)/i) { > + $in_reply_to = $1; > + } > + elsif (/^References: (.*)/i) { > + $references = $1; > + } References: can span multiple lines with --thread=deep in format-patch (technically any header can be, but References: is common)
[PATCH] send-email: avoid duplicate In-Reply-To/References
In case a patch already has In-Reply-To or References in the header (e.g. when the patch has been created with format-patch --thread) git-send-email should not add another pair of those headers. This is also not allowed according to RFC 5322 Section 3.6: https://tools.ietf.org/html/rfc5322#section-3.6 Avoid the second pair by reading the current headers into the appropriate variables. Signed-off-by: Stefan Agner--- This addresses the issue reported here: https://public-inbox.org/git/997160314bbafb3088a401f1c09cc...@agner.ch/ git-send-email.perl | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/git-send-email.perl b/git-send-email.perl index 2fa7818ca..7157397fd 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -1642,10 +1642,15 @@ foreach my $t (@files) { elsif (/^Content-Transfer-Encoding: (.*)/i) { $xfer_encoding = $1 if not defined $xfer_encoding; } + elsif (/^In-Reply-To: (.*)/i) { + $in_reply_to = $1; + } + elsif (/^References: (.*)/i) { + $references = $1; + } elsif (!/^Date:\s/i && /^[-A-Za-z]+:\s+\S/) { push @xh, $_; } - } else { # In the traditional # "send lots of email" format, -- 2.17.0