aboutsummaryrefslogtreecommitdiff
path: root/git-send-email.perl
diff options
context:
space:
mode:
authorMichael Witten <mfwitten@MIT.EDU>2008-02-03 19:53:58 -0500
committerJunio C Hamano <gitster@pobox.com>2008-02-05 00:36:10 -0800
commit8a7c56e1591ad5593883bb23fb6c5683a8a1a1a8 (patch)
tree68392a67c0d896cf23146bd45e53b6f208dae969 /git-send-email.perl
parent874299760708e3bd4d63e9afa8da3fe8a7ddc006 (diff)
downloadgit-8a7c56e1591ad5593883bb23fb6c5683a8a1a1a8.tar.gz
git-8a7c56e1591ad5593883bb23fb6c5683a8a1a1a8.tar.xz
git-send-email: Better handling of EOF
Before, when the user sent the EOF control character, the prompts would be repeated on the same line as the previous prompt. Now, repeat prompts display on separate lines. Signed-off-by: Michael Witten <mfwitten@mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-send-email.perl')
-rwxr-xr-xgit-send-email.perl44
1 files changed, 28 insertions, 16 deletions
diff --git a/git-send-email.perl b/git-send-email.perl
index 14268fc1d..9d7c1f467 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -376,9 +376,12 @@ if (@files) {
my $prompting = 0;
if (!defined $sender) {
$sender = $repoauthor || $repocommitter;
- do {
+
+ while (1) {
$_ = $term->readline("Who should the emails appear to be from? [$sender] ");
- } while (!defined $_);
+ last if defined $_;
+ print "\n";
+ }
$sender = $_ if ($_);
print "Emails will be sent from: ", $sender, "\n";
@@ -386,10 +389,14 @@ if (!defined $sender) {
}
if (!@to) {
- do {
- $_ = $term->readline("Who should the emails be sent to? ",
- "");
- } while (!defined $_);
+
+
+ while (1) {
+ $_ = $term->readline("Who should the emails be sent to? ", "");
+ last if defined $_;
+ print "\n";
+ }
+
my $to = $_;
push @to, split /,/, $to;
$prompting++;
@@ -411,19 +418,22 @@ sub expand_aliases {
@bcclist = expand_aliases(@bcclist);
if (!defined $initial_subject && $compose) {
- do {
- $_ = $term->readline("What subject should the initial email start with? ",
- $initial_subject);
- } while (!defined $_);
+ while (1) {
+ $_ = $term->readline("What subject should the initial email start with? ", $initial_subject);
+ last if defined $_;
+ print "\n";
+ }
+
$initial_subject = $_;
$prompting++;
}
if ($thread && !defined $initial_reply_to && $prompting) {
- do {
- $_= $term->readline("Message-ID to be used as In-Reply-To for the first email? ",
- $initial_reply_to);
- } while (!defined $_);
+ while (1) {
+ $_= $term->readline("Message-ID to be used as In-Reply-To for the first email? ", $initial_reply_to);
+ last if defined $_;
+ print "\n";
+ }
$initial_reply_to = $_;
}
@@ -474,9 +484,11 @@ EOT
close(C);
close(C2);
- do {
+ while (1) {
$_ = $term->readline("Send this email? (y|n) ");
- } while (!defined $_);
+ last if defined $_;
+ print "\n";
+ }
if (uc substr($_,0,1) ne 'Y') {
cleanup_compose_files();