From 9b277a2f8e5c22a05830e61d83876571b8eb56b4 Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Thu, 20 Aug 2020 22:23:35 +0200 Subject: [PATCH] Fix problem with non-ASCII characters in ediff error messages * lisp/vc/ediff-diff.el (ediff-prepare-error-list): Decode the data from diff before displaying (bug#5050). This fixes a problem with displaying raw bytes in the error messages in non-ASCII locales. --- lisp/vc/ediff-diff.el | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lisp/vc/ediff-diff.el b/lisp/vc/ediff-diff.el index ef466741b24..ccf5a7807f2 100644 --- a/lisp/vc/ediff-diff.el +++ b/lisp/vc/ediff-diff.el @@ -325,6 +325,10 @@ one optional arguments, diff-number to refine.") (error-buf ediff-error-buffer)) (ediff-skip-unsuitable-frames) (switch-to-buffer error-buf) + ;; We output data from the diff command using `raw-text' as + ;; the coding system, so decode before displaying. + (when (eq ediff-coding-system-for-read 'raw-text) + (decode-coding-region (point-min) (point-max) 'undecided)) (ediff-kill-buffer-carefully ctl-buf) (user-error "Errors in diff output. Diff output is in %S" diff-buff)))) -- 2.39.2