diff options
author | Dave Miller <justdave@bugzilla.org> | 2024-08-29 07:04:15 -0400 |
---|---|---|
committer | Dave Miller <github@justdave.net> | 2024-09-03 11:41:55 -0400 |
commit | 66db7a430586474f8a68007ac07546f49e9ab4df (patch) | |
tree | 86eed5ed0755d504ff1935d686271a6206010e30 | |
parent | 430a93b7c4df3aadfa2262ef9b8bcc8e77f0eca8 (diff) | |
download | bugs-66db7a430586474f8a68007ac07546f49e9ab4df.tar bugs-66db7a430586474f8a68007ac07546f49e9ab4df.tar.gz bugs-66db7a430586474f8a68007ac07546f49e9ab4df.tar.bz2 bugs-66db7a430586474f8a68007ac07546f49e9ab4df.tar.xz bugs-66db7a430586474f8a68007ac07546f49e9ab4df.zip |
Bug 1880288: Noncharacters in comments cause bugmail sending to fail
Co-authored-by: Frédéric Buclin <LpSolit@gmail.com>
-rw-r--r-- | Bugzilla/BugMail.pm | 3 | ||||
-rw-r--r-- | Bugzilla/MIME.pm | 6 | ||||
-rw-r--r-- | Bugzilla/Mailer.pm | 3 |
3 files changed, 9 insertions, 3 deletions
diff --git a/Bugzilla/BugMail.pm b/Bugzilla/BugMail.pm index fdcbc9d5a..1aff405d8 100644 --- a/Bugzilla/BugMail.pm +++ b/Bugzilla/BugMail.pm @@ -21,6 +21,7 @@ use Bugzilla::Mailer; use Bugzilla::Hook; use Bugzilla::MIME; +use Encode qw(); use Date::Parse; use Date::Format; use Scalar::Util qw(blessed); @@ -451,6 +452,7 @@ sub _generate_bugmail { encoding => 'quoted-printable', }, body_str => $msg_text, + encode_check => Encode::FB_DEFAULT ) ); if ($user->setting('email_format') eq 'html') { @@ -463,6 +465,7 @@ sub _generate_bugmail { encoding => 'quoted-printable', }, body_str => $msg_html, + encode_check => Encode::FB_DEFAULT ); } diff --git a/Bugzilla/MIME.pm b/Bugzilla/MIME.pm index 8c6c141bb..d6046198f 100644 --- a/Bugzilla/MIME.pm +++ b/Bugzilla/MIME.pm @@ -14,7 +14,7 @@ use warnings; use parent qw(Email::MIME); sub new { - my ($class, $msg) = @_; + my ($class, $msg, $args) = @_; state $use_utf8 = Bugzilla->params->{'utf8'}; # Template-Toolkit trims trailing newlines, which is problematic when @@ -54,7 +54,7 @@ sub new { # you're running on. See http://perldoc.perl.org/perlport.html#Newlines $msg =~ s/(?:\015+)?\012/\015\012/msg; - return $class->SUPER::new($msg); + return $class->SUPER::new($msg, $args); } sub as_string { @@ -113,7 +113,7 @@ workarounds. =head1 SYNOPSIS use Bugzilla::MIME; - my $email = Bugzilla::MIME->new($message); + my $email = Bugzilla::MIME->new($message, $args); =head1 DESCRIPTION diff --git a/Bugzilla/Mailer.pm b/Bugzilla/Mailer.pm index 5ccf2d1ed..d7c23f857 100644 --- a/Bugzilla/Mailer.pm +++ b/Bugzilla/Mailer.pm @@ -21,6 +21,7 @@ use Bugzilla::MIME; use Bugzilla::Util; use Bugzilla::User; +use Encode qw(); use Date::Format qw(time2str); use Email::Sender::Simple qw(sendmail); @@ -61,6 +62,7 @@ sub generate_email { encoding => 'quoted-printable', }, body_str => $msg_text, + encode_check => Encode::FB_DEFAULT ) ); if ($templates->{html} && $email_format eq 'html') { @@ -73,6 +75,7 @@ sub generate_email { encoding => 'quoted-printable', }, body_str => $msg_html, + encode_check => Encode::FB_DEFAULT ); } |