diff options
| author | Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> | 2026-03-18 04:24:52 +0200 |
|---|---|---|
| committer | Dirk-Jan C. Binnema <djcb@djcbsoftware.nl> | 2026-04-17 23:42:17 +0300 |
| commit | 6fdff414f259776516e7841b2ac4a9cfb03a0613 (patch) | |
| tree | 03418aa082ce8bba1f908fc7b3ff0c98d04af8f6 | |
| parent | 61eebff31cdd02a5808af52abefc6b801241d372 (diff) | |
mu4e-draft: handle corner-case decoding issue
When there are raw utf-8 headers.
Should help for #2722.
| -rw-r--r-- | mu4e/mu4e-draft.el | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/mu4e/mu4e-draft.el b/mu4e/mu4e-draft.el index ac33383..a5ea9f9 100644 --- a/mu4e/mu4e-draft.el +++ b/mu4e/mu4e-draft.el @@ -322,6 +322,12 @@ With HEADERS-ONLY non-nil, only include the headers part." (insert (format "Message-Id: <%s>\n" (plist-get msg :message-id)))) (mu4e--delimit-headers 'undelimit) (ignore-errors (run-hooks 'gnus-article-decode-hook)) + ;; If the buffer is still unibyte after decoding (e.g., message has raw + ;; UTF-8 headers that are not RFC-2047-enxcoded), decode remaining bytes as + ;; UTF-8 so they don't show as octal escapes (\303\251 etc.) in reply + ;; buffers. #2722. + (unless enable-multibyte-characters + (decode-coding-region (point-min) (point-max) 'utf-8)) (buffer-substring-no-properties (point-min) (point-max)))) (defvar mu4e--draft-buffer-max-name-length 48) |
