# HG changeset patch # User Eric S. Raymond # Date 1192116437 0 # Node ID a264636b5c98026eaeca5bb837e49592d7fa705d # Parent c08d5f729dcc3abbe0f8f9356e429cc3fb9bedef Bug fixes by Juanma Barranquero. Temporarily disable the check for his edge case, it's calling some brittle code. diff -r c08d5f729dcc -r a264636b5c98 lisp/vc.el --- a/lisp/vc.el Thu Oct 11 15:13:29 2007 +0000 +++ b/lisp/vc.el Thu Oct 11 15:27:17 2007 +0000 @@ -1424,7 +1424,7 @@ (setq revision (read-string "Branch, revision, or backend to move to: ")) (let ((vsym (intern-soft (upcase revision)))) (if (member vsym vc-handled-backends) - (mapc (lambda (file) vc-transfer-file file vsym) files) + (mapc (lambda (file) (vc-transfer-file file vsym)) files) (mapc (lambda (file) (vc-checkout file (eq model 'implicit) revision)))))) ((not (eq model 'implicit)) @@ -1881,12 +1881,14 @@ ;; Gnus-5.8.5 sets up an autoload for diff-mode, even if it's ;; not available. Work around that. (if (require 'diff-mode nil t) (diff-mode)) - (goto-char (point-max)) - (if verbose - (insert (format "\n\nDiffs between %s and %s end here." rev1-name rev2-name))) - (goto-char (point-min)) - (if verbose - (insert (format "Diffs between %s and %s:\n\n" rev1-name rev2-name))) + (when verbose + (let (buffer-read-only t) + (goto-char (point-max)) + (if verbose + (insert (format "\n\nDiffs between %s and %s end here." rev1-name rev2-name))) + (goto-char (point-min)) + (if verbose + (insert (format "Diffs between %s and %s:\n\n" rev1-name rev2-name))))) (shrink-window-if-larger-than-buffer) t) (progn @@ -1906,7 +1908,7 @@ (coding-system-for-read (if files (vc-coding-system-for-diff (car files)) 'undecided))) (vc-setup-buffer "*vc-diff*") - (message "Finding changes in..." filenames) + (message "Finding changes in %s..." filenames) ;; Many backends don't handle well the case of a file that has been ;; added but not yet committed to the repo (notably CVS and Subversion). ;; Do that work here so the backends don't have to futz with it. @@ -2007,19 +2009,20 @@ " (interactive "P") - (cond ((not (vc-contains-version-controlled-file default-directory)) - (error "No version-controlled files directly beneath default directory")) - (historic - (call-interactively 'vc-history-diff)) - (t - (let* ((files (vc-deduce-fileset t)) - (first (car files)) - (backend - (cond ((file-directory-p first) - (vc-responsible-backend first)) - (t - (vc-backend first))))) - (vc-diff-internal backend t files nil nil (interactive-p)))))) + (cond + ;;((not (vc-contains-version-controlled-file default-directory)) + ;;(error "No version-controlled files directly beneath default directory")) + (historic + (call-interactively 'vc-history-diff)) + (t + (let* ((files (vc-deduce-fileset t)) + (first (car files)) + (backend + (cond ((file-directory-p first) + (vc-responsible-backend first)) + (t + (vc-backend first))))) + (vc-diff-internal backend t files nil nil (interactive-p)))))) ;;;###autoload (defun vc-revision-other-window (rev)