comparison lisp/vc/vc.el @ 109043:50dd8d98f75b

* lisp/vc/vc.el (vc-diff-internal): Set `revert-buffer-function' buffer-locally to lambda that re-runs the vc diff command. (Bug#6447)
author Juri Linkov <juri@jurta.org>
date Fri, 25 Jun 2010 00:38:07 +0300
parents d928a6a7c3f2
children b44ac3c3bafd c70ff40ac4ce edba7a045a72
comparison
equal deleted inserted replaced
109042:87285390c61e 109043:50dd8d98f75b
1545 ;; Treat this case specially so as not to pop the buffer. 1545 ;; Treat this case specially so as not to pop the buffer.
1546 (progn 1546 (progn
1547 (message "%s" (cdr messages)) 1547 (message "%s" (cdr messages))
1548 nil) 1548 nil)
1549 (diff-mode) 1549 (diff-mode)
1550 (set (make-local-variable 'revert-buffer-function)
1551 `(lambda (ignore-auto noconfirm)
1552 (vc-diff-internal ,async ',vc-fileset ,rev1 ,rev2 ,verbose)))
1550 ;; Make the *vc-diff* buffer read only, the diff-mode key 1553 ;; Make the *vc-diff* buffer read only, the diff-mode key
1551 ;; bindings are nicer for read only buffers. pcl-cvs does the 1554 ;; bindings are nicer for read only buffers. pcl-cvs does the
1552 ;; same thing. 1555 ;; same thing.
1553 (setq buffer-read-only t) 1556 (setq buffer-read-only t)
1554 (vc-exec-after `(vc-diff-finish ,(current-buffer) ',(when verbose 1557 (vc-exec-after `(vc-diff-finish ,(current-buffer) ',(when verbose