diff options
Diffstat (limited to 'lisp/vc/vc-svn.el')
-rw-r--r-- | lisp/vc/vc-svn.el | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lisp/vc/vc-svn.el b/lisp/vc/vc-svn.el index de58fb91c62..a50befa9e4c 100644 --- a/lisp/vc/vc-svn.el +++ b/lisp/vc/vc-svn.el @@ -147,7 +147,8 @@ switches." (defun vc-svn-registered (file) "Check if FILE is SVN registered." (setq file (expand-file-name file)) - (when (vc-svn-root file) + (when (and (vc-svn-root file) + (file-accessible-directory-p (file-name-directory file))) (with-temp-buffer (cd (file-name-directory file)) (let* (process-file-side-effects @@ -309,11 +310,14 @@ to the SVN command." (defalias 'vc-svn-responsible-p 'vc-svn-root) +(declare-function log-edit-extract-headers "log-edit" (headers string)) + (defun vc-svn-checkin (files comment &optional _extra-args-ignored) "SVN-specific version of `vc-backend-checkin'." (let ((status (apply 'vc-svn-command nil 1 files "ci" - (nconc (list "-m" comment) (vc-switches 'SVN 'checkin))))) + (nconc (cons "-m" (log-edit-extract-headers nil comment)) + (vc-switches 'SVN 'checkin))))) (set-buffer "*vc*") (goto-char (point-min)) (unless (equal status 0) @@ -400,6 +404,8 @@ FILE is a file wildcard, relative to the root directory of DIRECTORY." (unless contents-done (vc-svn-command nil 0 file "revert"))) +(autoload 'vc-read-revision "vc") + (defun vc-svn-merge-file (file) "Accept a file merge request, prompting for revisions." (let* ((first-revision |