From: Junio C Hamano Date: Mon, 15 May 2023 20:59:03 +0000 (-0700) Subject: Merge branch 'mc/send-email-header-cmd' X-Git-Tag: v2.41.0-rc0~18 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=64477d20d713fa72b14bb0101f37fb41063f9d99;p=thirdparty%2Fgit.git Merge branch 'mc/send-email-header-cmd' "git send-email" learned "--header-cmd=" that can inject arbitrary e-mail header lines to the outgoing messages. * mc/send-email-header-cmd: send-email: detect empty blank lines in command output send-email: add --header-cmd, --no-header-cmd options send-email: extract execute_cmd from recipients_cmd --- 64477d20d713fa72b14bb0101f37fb41063f9d99 diff --cc git-send-email.perl index 26e18eebd9,22a64e608f..89d8237e89 --- a/git-send-email.perl +++ b/git-send-email.perl @@@ -2036,12 -2078,11 +2090,12 @@@ sub invoke_header_cmd # Execute a command (e.g. $to_cmd) to get a list of email addresses # and return a results array sub recipients_cmd { - my ($prefix, $what, $cmd, $file) = @_; + my ($prefix, $what, $cmd, $file, $quiet) = @_; - + my @lines = (); my @addresses = (); - open my $fh, "-|", "$cmd \Q$file\E" - or die sprintf(__("(%s) Could not execute '%s'"), $prefix, $cmd); - while (my $address = <$fh>) { ++ + @lines = execute_cmd($prefix, $cmd, $file); + for my $address (@lines) { $address =~ s/^\s*//g; $address =~ s/\s*$//g; $address = sanitize_address($address);