aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuri Linkov2019-03-19 23:52:33 +0200
committerJuri Linkov2019-03-19 23:52:33 +0200
commitb2dd61ffb0b4efc0419f4b5cbe279c2700b549e8 (patch)
treed6e5e57c11b92681880ed87d7579f8667df28551
parentded3c8de802d98635dc06faa178f91f99afdac53 (diff)
downloademacs-b2dd61ffb0b4efc0419f4b5cbe279c2700b549e8.tar.gz
emacs-b2dd61ffb0b4efc0419f4b5cbe279c2700b549e8.zip
* lisp/vc/vc.el (vc-diff-build-argument-list-internal): Add arg fileset.
(vc-root-version-diff): Set vc-diff-build-argument-list-internal's optional arg 'fileset' to the root directory. (Bug#34532)
-rw-r--r--lisp/vc/vc-hooks.el3
-rw-r--r--lisp/vc/vc.el10
2 files changed, 8 insertions, 5 deletions
diff --git a/lisp/vc/vc-hooks.el b/lisp/vc/vc-hooks.el
index 7dd7346fe8f..2052ace12bf 100644
--- a/lisp/vc/vc-hooks.el
+++ b/lisp/vc/vc-hooks.el
@@ -950,8 +950,7 @@ In the latter case, VC mode is deactivated for this buffer."
950 (bindings--define-key map [separator2] menu-bar-separator) 950 (bindings--define-key map [separator2] menu-bar-separator)
951 (bindings--define-key map [vc-insert-header] 951 (bindings--define-key map [vc-insert-header]
952 '(menu-item "Insert Header" vc-insert-headers 952 '(menu-item "Insert Header" vc-insert-headers
953 :help "Insert headers into a file for use with a version control system. 953 :help "Insert headers into a file for use with a version control system."))
954"))
955 (bindings--define-key map [vc-revert] 954 (bindings--define-key map [vc-revert]
956 '(menu-item "Revert to Base Version" vc-revert 955 '(menu-item "Revert to Base Version" vc-revert
957 :help "Revert working copies of the selected file set to their repository contents")) 956 :help "Revert working copies of the selected file set to their repository contents"))
diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el
index aae21ec45a4..0a638ec7d7f 100644
--- a/lisp/vc/vc.el
+++ b/lisp/vc/vc.el
@@ -1762,9 +1762,9 @@ Return t if the buffer had changes, nil otherwise."
1762 nil nil initial-input 'vc-revision-history default) 1762 nil nil initial-input 'vc-revision-history default)
1763 (read-string prompt initial-input nil default)))) 1763 (read-string prompt initial-input nil default))))
1764 1764
1765(defun vc-diff-build-argument-list-internal () 1765(defun vc-diff-build-argument-list-internal (&optional fileset)
1766 "Build argument list for calling internal diff functions." 1766 "Build argument list for calling internal diff functions."
1767 (let* ((vc-fileset (vc-deduce-fileset t)) ;FIXME: why t? --Stef 1767 (let* ((vc-fileset (or fileset (vc-deduce-fileset t))) ;FIXME: why t? --Stef
1768 (files (cadr vc-fileset)) 1768 (files (cadr vc-fileset))
1769 (backend (car vc-fileset)) 1769 (backend (car vc-fileset))
1770 (first (car files)) 1770 (first (car files))
@@ -1815,7 +1815,11 @@ Return t if the buffer had changes, nil otherwise."
1815;;;###autoload 1815;;;###autoload
1816(defun vc-root-version-diff (_files rev1 rev2) 1816(defun vc-root-version-diff (_files rev1 rev2)
1817 "Report diffs between REV1 and REV2 revisions of the whole tree." 1817 "Report diffs between REV1 and REV2 revisions of the whole tree."
1818 (interactive (vc-diff-build-argument-list-internal)) 1818 (interactive
1819 (vc-diff-build-argument-list-internal
1820 (or (ignore-errors (vc-deduce-fileset t))
1821 (let ((backend (or (vc-deduce-backend) (vc-responsible-backend default-directory))))
1822 (list backend (list (vc-call-backend backend 'root default-directory)))))))
1819 ;; This is a mix of `vc-root-diff' and `vc-version-diff' 1823 ;; This is a mix of `vc-root-diff' and `vc-version-diff'
1820 (when (and (not rev1) rev2) 1824 (when (and (not rev1) rev2)
1821 (error "Not a valid revision range")) 1825 (error "Not a valid revision range"))