Reset terminal attributes when terminating git send-email If you break out of the prompts presented to you by git send-email your terminal can be left in an inconsistent state. Here we trap the interrupt signal and reset the terminal before exiting. Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca> Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff --git a/git-send-email.perl b/git-send-email.perl index 69559b2..f1a8855 100755 --- a/git-send-email.perl +++ b/git-send-email.perl
@@ -21,8 +21,11 @@ use Term::ReadLine; use Getopt::Long; use Data::Dumper; +use Term::ANSIColor; use Git; +$SIG{INT} = sub { print color("reset"), "\n"; exit }; + package FakeTerm; sub new { my ($class, $reason) = @_;