[PATCH] git-send-email: skip RFC2047 quoting for ASCII subjects
- From
- Krzysztof Mazur <krzysiek@podlesie.net>
- Date
- Oct 24, 2012, 08:03 UTC
- Message-ID
- <1351065815-22416-1-git-send-email-krzysiek@podlesie.net>
The git-send-email always use RFC2047 subject quoting for files with "broken" encoding - non-ASCII files without Content-Transfer-Encoding, even for ASCII subjects. Now for ASCII subjects the RFC2047 quoting will be skipped.
Signed-off-by: Krzysztof Mazur <krzysiek@podlesie.net> --- git-send-email.perl | 3 ++- t/t9001-send-email.sh | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/git-send-email.perl b/git-send-email.perl index adcb4e3..efeae4c 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -1327,7 +1327,8 @@ foreach my $t (@files) { $body_encoding = $auto_8bit_encoding; } - if ($broken_encoding{$t} && !is_rfc2047_quoted($subject)) { + if ($broken_encoding{$t} && !is_rfc2047_quoted($subject) && + ($subject =~ /[^[:ascii:]]/)) { $subject = quote_rfc2047($subject, $auto_8bit_encoding); } diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh index 89fceda..6c6af7d 100755 --- a/t/t9001-send-email.sh +++ b/t/t9001-send-email.sh @@ -1143,6 +1143,23 @@ EOF ' test_expect_success $PREREQ 'setup expect' ' +cat >expected <<EOF +Subject: subject goes here +EOF +' + +test_expect_success $PREREQ 'ASCII subject is not RFC2047 quoted' ' + clean_fake_sendmail && + echo bogus | + git send-email --from=author@example.com --to=nobody@example.com \ + --smtp-server="$(pwd)/fake.sendmail" \ + --8bit-encoding=UTF-8 \ + email-using-8bit >stdout && + grep "Subject" msgtxt1 >actual && + test_cmp expected actual +' + +test_expect_success $PREREQ 'setup expect' ' cat >content-type-decl <<EOF MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8
-- 1.8.0.3.gf4c35fc