]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid errors when creating files under SVN in new directory
authorEli Zaretskii <eliz@gnu.org>
Fri, 11 Dec 2015 10:50:53 +0000 (12:50 +0200)
committerEli Zaretskii <eliz@gnu.org>
Fri, 11 Dec 2015 10:50:53 +0000 (12:50 +0200)
* lisp/vc/vc-svn.el (vc-svn-registered): Use
file-accessible-directory-p, to avoid cd'ing to a non-existing
directory, which signals an error on some systems.  (Bug#21984)
(vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
Use declare-function to avoid byte-compiler warnings.

lisp/vc/vc-svn.el

index a15f3413a8df0c69bc518f6d29d8106806b260a0..a50befa9e4c5585204eda5d1ae466a761c4ef791 100644 (file)
@@ -148,7 +148,7 @@ switches."
   "Check if FILE is SVN registered."
   (setq file (expand-file-name file))
   (when (and (vc-svn-root file)
-             (file-directory-p (file-name-directory file)))
+             (file-accessible-directory-p (file-name-directory file)))
     (with-temp-buffer
       (cd (file-name-directory file))
       (let* (process-file-side-effects
@@ -310,11 +310,13 @@ 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 (cons "-m" (log-edit-extract-headers comment))
+                 (nconc (cons "-m" (log-edit-extract-headers nil comment))
                         (vc-switches 'SVN 'checkin)))))
     (set-buffer "*vc*")
     (goto-char (point-min))
@@ -402,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