From: Junio C Hamano Date: Tue, 30 May 2006 06:53:13 +0000 (-0700) Subject: send-email: do not pass bogus address to local sendmail binary X-Git-Tag: v1.4.0-rc1~29 X-Git-Url: https://git.verplant.org/?a=commitdiff_plain;h=2186d566a6c2dfb2f168ae608bbb2e0e77122d7e;p=git.git send-email: do not pass bogus address to local sendmail binary This makes t9001 test happy. Also fixes the warning on uninitialized $references variable again. Signed-off-by: Junio C Hamano --- diff --git a/git-send-email.perl b/git-send-email.perl index d418d6c5..0e368fff 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -387,7 +387,9 @@ X-Mailer: git-send-email $gitversion my $pid = open my $sm, '|-'; defined $pid or die $!; if (!$pid) { - exec($smtp_server,'-i',@recipients) or die $!; + exec($smtp_server,'-i', + map { scalar extract_valid_address($_) } + @recipients) or die $!; } print $sm "$header\n$message"; close $sm or die $?; @@ -420,7 +422,7 @@ X-Mailer: git-send-email $gitversion } $reply_to = $initial_reply_to; -$references = $initial_reply_to; +$references = $initial_reply_to || ''; make_message_id(); $subject = $initial_subject; diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh index 276cbac3..a61da1ef 100755 --- a/t/t9001-send-email.sh +++ b/t/t9001-send-email.sh @@ -13,10 +13,14 @@ test_expect_success \ test_expect_success \ 'Setup helper tool' \ - 'echo "#!/bin/sh" > fake.sendmail - echo "shift" >> fake.sendmail - echo "echo \"\$*\" > commandline" >> fake.sendmail - echo "cat > msgtxt" >> fake.sendmail + '(echo "#!/bin/sh" + echo shift + echo for a + echo do + echo " echo \"!\$a!\"" + echo "done >commandline" + echo "cat > msgtxt" + ) >fake.sendmail chmod +x ./fake.sendmail git add fake.sendmail GIT_AUTHOR_NAME="A" git commit -a -m "Second."' @@ -26,9 +30,12 @@ test_expect_success \ 'git format-patch -n HEAD^1 git send-email -from="Example " --to=nobody@example.com --smtp-server="$(pwd)/fake.sendmail" ./0001*txt' +cat >expected <<\EOF +!nobody@example.com! +!author@example.com! +EOF test_expect_success \ 'Verify commandline' \ - 'cline=$(cat commandline) - [ "$cline" == "nobody@example.com author@example.com" ]' + 'diff commandline expected' test_done