(puthash key val diff-hl-spec-cache)))\r
val))\r
\r
-(defun diff-hl-changes ()\r
- (let* ((buf-name " *vc-diff-hl* ")\r
- (vc-git-diff-switches nil)\r
+(defmacro diff-hl-with-diff-switches (body)\r
+ `(let ((vc-git-diff-switches nil)\r
(vc-hg-diff-switches nil)\r
(vc-diff-switches '("-U0"))\r
- (vc-disable-async-diff t)\r
+ (vc-disable-async-diff t))\r
+ ,body))\r
+\r
+(defun diff-hl-changes ()\r
+ (let* ((buf-name " *diff-hl* ")\r
(file (buffer-file-name))\r
(backend (vc-backend file))\r
res)\r
(when backend\r
- (vc-call-backend backend 'diff (list file) nil nil buf-name)\r
+ (diff-hl-with-diff-switches\r
+ (vc-call-backend backend 'diff (list file) nil nil buf-name))\r
(with-current-buffer buf-name\r
(goto-char (point-min))\r
(unless (eobp)\r
(fileset (vc-deduce-fileset)))\r
(unwind-protect\r
(progn\r
- (vc-diff-internal nil fileset nil nil nil diff-buffer)\r
+ (diff-hl-with-diff-switches\r
+ (vc-diff-internal nil fileset nil nil nil diff-buffer))\r
(vc-exec-after\r
`(progn\r
(when (eobp)\r