summaryrefslogtreecommitdiffstats
path: root/Bugzilla/Mailer.pm
diff options
context:
space:
mode:
authormkanat%bugzilla.org <>2007-11-23 13:58:33 +0100
committermkanat%bugzilla.org <>2007-11-23 13:58:33 +0100
commit9f0310bf8c0821347699b434f659eb52decabf87 (patch)
tree31153ecb72f2b57a9bb3daf638cc4e1152f8a0b0 /Bugzilla/Mailer.pm
parent8ab75a83c21606ad77a38c05057f886011fa0451 (diff)
downloadbugzilla-9f0310bf8c0821347699b434f659eb52decabf87.tar.gz
bugzilla-9f0310bf8c0821347699b434f659eb52decabf87.tar.xz
Bug 363153: Turn on the utf8 bit on all strings in Bugzilla that contain
non-ASCII data, if the utf8 parameter is on. This means that string functions like substr() work properly on multi-byte languages, now. Patch By Max Kanat-Alexander <mkanat@bugzilla.org> r=wurblzap, a=mkanat
Diffstat (limited to 'Bugzilla/Mailer.pm')
-rw-r--r--Bugzilla/Mailer.pm4
1 files changed, 3 insertions, 1 deletions
diff --git a/Bugzilla/Mailer.pm b/Bugzilla/Mailer.pm
index 03f370a4e..48f40d8b7 100644
--- a/Bugzilla/Mailer.pm
+++ b/Bugzilla/Mailer.pm
@@ -67,7 +67,9 @@ sub MessageToMTA {
# Encode the headers correctly in quoted-printable
foreach my $header qw(From To Cc Reply-To Sender Errors-To Subject) {
if (my $value = $email->header($header)) {
- $value = Encode::decode("UTF-8", $value) if Bugzilla->params->{'utf8'};
+ if (Bugzilla->params->{'utf8'} && !utf8::is_utf8($value)) {
+ $value = utf8::decode($value);
+ }
my $encoded = encode('MIME-Q', $value);
$email->header_set($header, $encoded);
}