diff options
author | Arun Isaac | 2019-09-28 13:27:33 +0530 |
---|---|---|
committer | Arun Isaac | 2019-09-28 13:31:10 +0530 |
commit | 9d82904011516530b6ef1bcd53cef220db485e7a (patch) | |
tree | c41d7e9edb89efef4cc19466d865381b2354919d | |
parent | f37b33d163016a6deec5c23bc860447a2eaefcb9 (diff) | |
download | guile-email-9d82904011516530b6ef1bcd53cef220db485e7a.tar.gz guile-email-9d82904011516530b6ef1bcd53cef220db485e7a.tar.lz guile-email-9d82904011516530b6ef1bcd53cef220db485e7a.zip |
email: Tolerate decoding errors in MIME encoded words.
* email/email.scm (decode-mime-encoded-word): Tolerate decoding errors
in MIME encoded words using the substitute conversion strategy.
* tests/email.scm ("tolerate decoding errors in MIME encoded words"):
New test.
Reported-by: Christopher Baines <mail@cbaines.net>
-rw-r--r-- | email/email.scm | 2 | ||||
-rw-r--r-- | tests/email.scm | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/email/email.scm b/email/email.scm index ef2efe9..a791a0e 100644 --- a/email/email.scm +++ b/email/email.scm @@ -564,7 +564,7 @@ ((q) q-encoding-decode) (else (error "Encoding of MIME word unknown" word))) encoded-text) - charset))) + charset 'substitute))) 'post)) (define (body->mime-entities body boundary) diff --git a/tests/email.scm b/tests/email.scm index 1346b20..ca0ebc3 100644 --- a/tests/email.scm +++ b/tests/email.scm @@ -351,4 +351,10 @@ body" "iso-8859-1")) (content-transfer-encoding . 7bit) (subject . "Foo Bãr"))) +(test-equal "tolerate decoding errors in MIME encoded words" + ((module-ref (resolve-module '(email email)) + 'decode-mime-encoded-word) + "=?UTF-8?Q?B=E8r?=") + "B�r") + (test-end "email") |