From: Karl Fogel Date: Wed, 3 Dec 2014 20:23:26 +0000 (-0600) Subject: Fix bug whereby saving files hung in VC hook. X-Git-Tag: emacs-25.0.90~2635^2~212 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=b3298507f92f8cc17dc35090e4036aac787af682;p=emacs.git Fix bug whereby saving files hung in VC hook. Saving a buffer visiting a file under SVN control would hang if the remote repository were unreachable, because the VC hooks tried to run "svn status -u" on the file, where the "-u" tells svn to get update information from the remote repository. http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00174.html * vc/vc-svn.el (vc-svn-state): Remove optional `localp' argument and always pass "-v" to "svn status", never "-u". --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index e9f98340fad..2309fc57e79 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,16 @@ +2014-12-03 Karl Fogel + + Fix bug whereby saving files hung in VC hook. + + Saving a buffer visiting a file under SVN control would hang if + the remote repository were unreachable, because the VC hooks tried + to run "svn status -u" on the file, where the "-u" tells svn to + get update information from the remote repository. + http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00174.html + + * vc/vc-svn.el (vc-svn-state): Remove optional `localp' + argument and always pass "-v" to "svn status", never "-u". + 2014-12-03 Stefan Monnier * emacs-lisp/inline.el: Fix up copyright header. diff --git a/lisp/vc/vc-svn.el b/lisp/vc/vc-svn.el index abeeac0be14..e29dae4d47c 100644 --- a/lisp/vc/vc-svn.el +++ b/lisp/vc/vc-svn.el @@ -153,12 +153,12 @@ If you want to force an empty list of arguments, use t." (let ((parsed (vc-svn-parse-status file))) (and parsed (not (memq parsed '(ignored unregistered)))))))))) -(defun vc-svn-state (file &optional localp) +(defun vc-svn-state (file) "SVN-specific version of `vc-state'." (let (process-file-side-effects) (with-temp-buffer (cd (file-name-directory file)) - (vc-svn-command t 0 file "status" (if localp "-v" "-u")) + (vc-svn-command t 0 file "status" "-v") (vc-svn-parse-status file)))) ;; FIXME it would be better not to have the "remote" argument,