summaryrefslogtreecommitdiff
path: root/lisp/vc/vc-svn.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/vc/vc-svn.el')
-rw-r--r--lisp/vc/vc-svn.el10
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