diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2023-01-01 16:08:31 +0100 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2023-01-01 16:08:31 +0100 |
commit | 9d7eb3c5efe6427a1a89fb3e4c7165259edff4dd (patch) | |
tree | 1e676e3a5b7a13f7e38c8885c870eeac82f1b191 | |
parent | 92c6ce77c332f8ebbcdb090e0ca8b85c85328762 (diff) |
debbugs: Fix processing of bug subject.
Fixes <https://issues.guix.gnu.org/49115>.
* mumi/debbugs.scm (bug-status): Use parse-email-headers to decode bug
subject.
-rw-r--r-- | mumi/debbugs.scm | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/mumi/debbugs.scm b/mumi/debbugs.scm index 263b4e5..16bff8e 100644 --- a/mumi/debbugs.scm +++ b/mumi/debbugs.scm @@ -251,7 +251,6 @@ defaults to 30 days." (subject bug-subject) (tags bug-tags)) -(define qp-pattern "=\\?UTF-8\\?Q\\?([^?]+)\\?=") (define (bug-status bug-id) (and-let* ((bug-id (if (number? bug-id) bug-id (string->number bug-id))) @@ -283,11 +282,8 @@ defaults to 30 days." (or (assoc-ref properties "Severity") "normal") (let ((subject (or (assoc-ref properties "Subject") ""))) (if (string-contains subject "=?UTF-8?Q?") - (or (false-if-exception - (utf8->string - (quoted-printable-decode - (regexp-substitute/global #f qp-pattern - subject 'pre 1 'post)))) - subject) + (match (parse-email-headers (string-append "Subject: " subject "\n")) + ((('subject . sub) . rest) sub) + (other subject)) subject)) (assoc-ref properties "Tags")))) |