mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-24 20:08:10 +01:00
emacs: less guessing of character set in messages
The macro with-current-notmuch-show-message executes command `notmuch show --format=raw id:...` which just outputs the contents of the mail file verbatim (into temporary buffer). In case e.g. utf-8 locale is used the temporary buffer has buffer-file-coding-system as utf-8. In this case Emacs converts the data to multibyte format, guessing that input is in utf-8. However, the "raw" (MIME) message may contain octet data in any other 8bit format, and as no (MIME-)content spesific handling to the message is done at this point, conversion to other formats may lose information. By setting coding-system-for-read 'no-conversion drops the conversion part and makes this handle input as notmuch-get-bodypart-internal() does. This marks the broken test in previous change fixed.
This commit is contained in:
parent
0c4dea4e48
commit
59c994e770
2 changed files with 4 additions and 4 deletions
|
@ -203,9 +203,10 @@ For example, if you wanted to remove an \"unread\" tag and add a
|
|||
(let ((id (notmuch-show-get-message-id)))
|
||||
(let ((buf (generate-new-buffer (concat "*notmuch-msg-" id "*"))))
|
||||
(with-current-buffer buf
|
||||
(let ((coding-system-for-read 'no-conversion))
|
||||
(call-process notmuch-command nil t nil "show" "--format=raw" id)
|
||||
,@body)
|
||||
(kill-buffer buf)))))
|
||||
(kill-buffer buf))))))
|
||||
|
||||
(defun notmuch-show-turn-on-visual-line-mode ()
|
||||
"Enable Visual Line mode."
|
||||
|
|
|
@ -517,7 +517,6 @@ test_emacs '(let ((standard-input "\"attachment2.gz\""))
|
|||
test_expect_equal_file attachment2.gz "$EXPECTED/attachment"
|
||||
|
||||
test_begin_subtest "Save 8bit attachment from within emacs using notmuch-show-save-attachments"
|
||||
test_subtest_known_broken
|
||||
|
||||
add_message '[subject]="Attachment with 8bit chars"' \
|
||||
'[header]="MIME-Version: 1.0"' \
|
||||
|
|
Loading…
Reference in a new issue