1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-31 11:13:50 +00:00

(vc-svn-registered): Fix problem of visiting non-writable

Subversion-controlled files by saving window configuration before
calling vc-do-command. vc-do-command calls pop-to-buffer on error
which is unexpected during registration.
This commit is contained in:
Bill Wohler 2005-12-13 00:48:04 +00:00
parent 2da61afceb
commit 63fc53c944
2 changed files with 19 additions and 8 deletions

View File

@ -1,8 +1,14 @@
2005-12-12 Bill Wohler <wohler@newt.com>
* vc-svn.el (vc-svn-registered): Fix problem of visiting
non-writable Subversion-controlled files by saving window
configuration before calling vc-do-command. vc-do-command calls
pop-to-buffer on error which is unexpected during registration.
2005-12-12 Jay Belanger <belanger@truman.edu>
* calc/README: Update the summary of changes.
2005-12-12 Stefan Monnier <monnier@iro.umontreal.ca>
* descr-text.el (describe-char): Rework last fix to solve the problem

View File

@ -114,13 +114,18 @@ This is only meaningful if you don't use the implicit checkout model
(file-name-directory file)))
(with-temp-buffer
(cd (file-name-directory file))
(condition-case nil
(vc-svn-command t 0 file "status" "-v")
;; Some problem happened. E.g. We can't find an `svn' executable.
;; We used to only catch `file-error' but when the process is run on
;; a remote host via Tramp, the error is only reported via the
;; exit status which is turned into an `error' by vc-do-command.
(error nil))
(condition-case nil
;; Save configuration since vc-do-command calls pop-to-buffer on
;; error (such as visiting a Subversion-controlled file that you
;; don't have permission to edit). This causes later problems
;; during registration.
(save-window-excursion
(vc-svn-command t 0 file "status" "-v"))
;; Some problem happened. E.g. We can't find an `svn' executable.
;; We used to only catch `file-error' but when the process is run on
;; a remote host via Tramp, the error is only reported via the
;; exit status which is turned into an `error' by vc-do-command.
(error nil))
(vc-svn-parse-status t)
(eq 'SVN (vc-file-getprop file 'vc-backend)))))