Re: [PATCH v1] emacs: `with-current-notmuch-show-message' should not leak `coding-system-for-read'

Subject: Re: [PATCH v1] emacs: `with-current-notmuch-show-message' should not leak `coding-system-for-read'

Date: Wed, 19 Nov 2014 13:06:50 +0200

To: David Edmondson, notmuch@notmuchmail.org

Cc:

From: Tomi Ollila


On Tue, Nov 18 2014, David Edmondson <dme@dme.org> wrote:

> `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.
> ---

Uh, this looks as good as it can be ;), and tests pass, +1

Tomi



>
> Fix for id:87ioifb55d.fsf@nautilus.nautilus.
>
>  emacs/notmuch-show.el | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
> index 4035fe8..b8cfbb8 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."
> -- 
> 2.1.3
>
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> http://notmuchmail.org/mailman/listinfo/notmuch

Thread: