Re: [PATCH v4 5/6] send-email: --in-reply-to=<file> populate header fields
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 8, 2016, 18:23 UTC
- Message-ID
- <xmqqvb1jletl.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20160608130736.32163-1-samuel.groot@grenoble-inp.org>
Samuel GROOT <samuel.groot@grenoble-inp.org> writes:
> +if ($initial_reply_to && -f $initial_reply_to) {
> + my $error = validate_patch($initial_reply_to);This call is wrong, isn't it?
You are not going to send out the message you are responding to (the message may not even be a patch), and you do not want to die with an error message that says "patch contains an overlong line".
Show 6 quoted lines
> + die "fatal: $initial_reply_to: $error\nwarning: no patches were sent\n" > + if $error; > + > + open my $fh, "<", $initial_reply_to or die "can't open file $initial_reply_to"; > + my $mail = Git::parse_email($fh); > + close $fh;
my $header = Git::parse_email_header($fh);
perhaps?
Show 8 quoted lines
> + my $initial_sender = $sender || $repoauthor || $repocommitter || '';
> +
> + my $prefix_re = "";
> + my $subject_re = $mail->{"subject"}[0];
> + if ($subject_re =~ /^[^Re:]/) {
> + $prefix_re = "Re: ";
> + }
> + $initial_subject = $prefix_re . $subject_re;I am not sure what the significance of the fact that the subject happens to begin with a letter other than 'R', 'e', or ':'.
Did you mean to do something like this instead?
my $subject = $mail->{"subject"}[0];
$subject =~ s/^(re:\s*)+//i; # strip "Re: Re: ..."
$initial_subject = "Re: $subject";instead?
By the way, this is a good example why your "unfold" implementation in 4/6 is unwieldy for the caller. Imagine a rather long subject that is folded, i.e.
To: Samuel
Subject: Help! I am having a trouble running git-send-email
correctly.
Message-id: <...>