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-03-18 04:24:52 +0200 |
| commit | 60cf77b8c2b12da327aaa92ea27ad7e3a1752c73 (patch) | |
| tree | 7fd55a07ac782a5a18d568ceb2a13c1718f803bc /mu4e | |
| parent | 9ee49f0657d0bdaecfd1486495c5e4a2fdff071b (diff) | |
mu4e-draft: handle corner-case decoding issue
When there are raw utf-8 headers.
Should help for #2722.
Diffstat (limited to 'mu4e')
| -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 c0e4869..90c15dd 100644 --- a/mu4e/mu4e-draft.el +++ b/mu4e/mu4e-draft.el @@ -334,6 +334,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) |
