From: Eli Zaretskii Date: Sat, 2 Apr 2016 09:25:15 +0000 (+0300) Subject: Improve vc-diff with Git backend X-Git-Tag: emacs-25.0.93~80 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=17b5152d737e74a3b99a98f3be9866facee8865f;p=emacs.git Improve vc-diff with Git backend * lisp/vc/vc-git.el (vc-git-command): Don't override coding-system-for-read/write if they are already bound. Suggested by joaotavora@gmail.com (João Távora). (Bug#20892) (vc-git-print-log): Don't override coding-system-for-read if it's already bound. --- diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 1c43e3ec31a..2921b6470da 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -853,7 +853,8 @@ If SHORTLOG is non-nil, use a short format based on `vc-git-root-log-format'. \(This requires at least Git version 1.5.6, for the --graph option.) If START-REVISION is non-nil, it is the newest revision to show. If LIMIT is non-nil, show no more than this many entries." - (let ((coding-system-for-read vc-git-commits-coding-system)) + (let ((coding-system-for-read + (or coding-system-for-read vc-git-commits-coding-system))) ;; `vc-do-command' creates the buffer, but we need it before running ;; the command. (vc-setup-buffer buffer) @@ -1385,8 +1386,10 @@ This command shares argument histories with \\[rgrep] and \\[grep]." "A wrapper around `vc-do-command' for use in vc-git.el. The difference to vc-do-command is that this function always invokes `vc-git-program'." - (let ((coding-system-for-read vc-git-commits-coding-system) - (coding-system-for-write vc-git-commits-coding-system)) + (let ((coding-system-for-read + (or coding-system-for-read vc-git-commits-coding-system)) + (coding-system-for-write + (or coding-system-for-write vc-git-commits-coding-system))) (apply 'vc-do-command (or buffer "*vc*") okstatus vc-git-program ;; http://debbugs.gnu.org/16897 (unless (and (not (cdr-safe file-or-list))