diff options
Diffstat (limited to 'git-send-email.perl')
| -rwxr-xr-x | git-send-email.perl | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/git-send-email.perl b/git-send-email.perl index 07f2a0cbea..66c9171109 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -795,11 +795,26 @@ if (@rev_list_opts) { @files = handle_backup_files(@files); if ($validate) { + # FIFOs can only be read once, exclude them from validation. + my @real_files = (); foreach my $f (@files) { unless (-p $f) { - validate_patch($f, $target_xfer_encoding); + push(@real_files, $f); } } + + # Run the loop once again to avoid gaps in the counter due to FIFO + # arguments provided by the user. + my $num = 1; + my $num_files = scalar @real_files; + $ENV{GIT_SENDEMAIL_FILE_TOTAL} = "$num_files"; + foreach my $r (@real_files) { + $ENV{GIT_SENDEMAIL_FILE_COUNTER} = "$num"; + validate_patch($r, $target_xfer_encoding); + $num += 1; + } + delete $ENV{GIT_SENDEMAIL_FILE_COUNTER}; + delete $ENV{GIT_SENDEMAIL_FILE_TOTAL}; } if (@files) { @@ -1537,7 +1552,7 @@ sub send_message { To: $to${ccline} Subject: $subject Date: $date -Message-Id: $message_id +Message-ID: $message_id "; if ($use_xmailer) { $header .= "X-Mailer: git-send-email $gitversion\n"; @@ -1832,7 +1847,7 @@ sub process_file { $has_mime_version = 1; push @xh, $_; } - elsif (/^Message-Id: (.*)/i) { + elsif (/^Message-ID: (.*)/i) { $message_id = $1; } elsif (/^Content-Transfer-Encoding: (.*)/i) { |
