diff options
| author | David Edmondson <dme@dme.org> | 2014-11-18 07:03:17 +0000 |
|---|---|---|
| committer | David Bremner <david@tethera.net> | 2014-11-26 18:26:07 +0100 |
| commit | 7585e8c906b51b5a8db89feb8981b8c5fe2e107c (patch) | |
| tree | 4f2dc7b6421fc92c50450498043cbe91bc85278f | |
| parent | 32855b91d980c6c17ee8c4fe2fb2fa957d11d90f (diff) | |
emacs: `with-current-notmuch-show-message' should not leak `coding-system-for-read'
`with-current-notmuch-show-message' applies a `no-conversion' coding
system when reading a raw message from notmuch. That coding system
should _not_ be applied when the body of the macro is evaluated, as it
can cause file operations used during that evaluation to incorrectly
apply the `no-conversion' coding system.
This was discovered when a user's .signature file contained non-ASCII
characters. When a message is forwarded, the `no-conversion' coding
system was applied to the reading of the .signature file, resulting in
raw rather than UTF-8 interpretation of the data.
| -rw-r--r-- | emacs/notmuch-show.el | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 4035fe88..b8cfbb8a 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -241,9 +241,9 @@ every user interaction with notmuch." (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)))))) + (call-process notmuch-command nil t nil "show" "--format=raw" id)) + ,@body) + (kill-buffer buf))))) (defun notmuch-show-turn-on-visual-line-mode () "Enable Visual Line mode." |
