From 279fb03930fe26bc9a33a8407a79c48e10b13fc0 Mon Sep 17 00:00:00 2001 From: Jeremy Lecour Date: Sun, 24 Jan 2021 09:45:22 +0100 Subject: [PATCH] =?UTF-8?q?encodage=20forc=C3=A9=20seulement=20en=20cas=20?= =?UTF-8?q?de=20caract=C3=A8res=20invalides?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/email_importer.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/services/email_importer.rb b/app/services/email_importer.rb index 55f991c..b00e83b 100644 --- a/app/services/email_importer.rb +++ b/app/services/email_importer.rb @@ -42,9 +42,9 @@ class EmailImporter end elsif mail.content_type && mail.content_type.match?(/\btext\/html\b/) plain_text = html_to_text_class.new.convert(mail.decoded) - if mail.content_type.match?(/\butf-8\b/) - # force utf-8 charset, even if we have to remve invalid characters - plain_text.encode!('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '') + + if mail.content_type.match?(/\butf-8\b/i) and !plain_text.valid_encoding? + plain_text.encode('UTF-8', 'binary', invalid: :replace, undef: :replace) else plain_text end