summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Jay Soffian <jaysoffian@gmail.com>2009-03-31 12:22:12 -0400
committerLibravatar Junio C Hamano <gitster@pobox.com>2009-04-01 11:11:21 -0700
commitdc1460aa8de64f62b4612b6d2546ed7b88050de2 (patch)
treead4c752bb4a7e4b04de2bf78235043a1e99c454e
parentsend-email: don't attempt to prompt if tty is closed (diff)
downloadtgif-dc1460aa8de64f62b4612b6d2546ed7b88050de2.tar.xz
send-email: ask_default should apply to all emails, not just the first
Commit 6e18251 made the "Send this email?" prompt assume yes if confirm = "inform" when it was unable to get a valid response. However, the "yes" assumption only worked correctly for the first email. This commit fixes the issue and confirms the fix by modifying the existing test for the prompt to send multiple emails. Reported by Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Jay Soffian <jaysoffian@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xgit-send-email.perl3
-rwxr-xr-xt/t9001-send-email.sh4
2 files changed, 4 insertions, 3 deletions
diff --git a/git-send-email.perl b/git-send-email.perl
index d790660bcf..fc153f9459 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -687,7 +687,7 @@ if ($compose && $compose > 0) {
# Variables we set as part of the loop over files
our ($message_id, %mail, $subject, $reply_to, $references, $message,
- $needs_confirm, $message_num);
+ $needs_confirm, $message_num, $ask_default);
sub extract_valid_address {
my $address = shift;
@@ -845,7 +845,6 @@ X-Mailer: git-send-email $gitversion
if ($needs_confirm && !$dry_run) {
print "\n$header\n";
- my $ask_default;
if ($needs_confirm eq "inform") {
$confirm_unconfigured = 0; # squelch this message for the rest of this run
$ask_default = "y"; # assume yes on EOF since user hasn't explicitly asked for confirmation
diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh
index b4de98c1f2..195ff8b27b 100755
--- a/t/t9001-send-email.sh
+++ b/t/t9001-send-email.sh
@@ -462,12 +462,14 @@ test_expect_success 'confirm by default (due to --compose)' '
test_expect_success 'confirm detects EOF (inform assumes y)' '
CONFIRM=$(git config --get sendemail.confirm) &&
git config --unset sendemail.confirm &&
+ rm -fr outdir &&
+ git format-patch -2 -o outdir &&
GIT_SEND_EMAIL_NOTTY=1 \
git send-email \
--from="Example <nobody@example.com>" \
--to=nobody@example.com \
--smtp-server="$(pwd)/fake.sendmail" \
- $patches < /dev/null
+ outdir/*.patch < /dev/null
ret="$?"
git config sendemail.confirm ${CONFIRM:-never}
test $ret = "0"