Mercurial > emacs
changeset 62606:6e91e3b4e9bc
(vc-cvs-checkout-model): Handle the case where FILE doesn't exist.
author | André Spiegel <spiegel@gnu.org> |
---|---|
date | Sun, 22 May 2005 10:29:44 +0000 |
parents | 29ac0be69667 |
children | da37fb20f191 |
files | lisp/vc-cvs.el |
diffstat | 1 files changed, 12 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/vc-cvs.el Sun May 22 09:49:43 2005 +0000 +++ b/lisp/vc-cvs.el Sun May 22 10:29:44 2005 +0000 @@ -236,16 +236,19 @@ (defun vc-cvs-checkout-model (file) "CVS-specific version of `vc-checkout-model'." - (if (or (getenv "CVSREAD") - ;; If the file is not writable (despite CVSREAD being - ;; undefined), this is probably because the file is being - ;; "watched" by other developers. - ;; (If vc-mistrust-permissions was t, we actually shouldn't - ;; trust this, but there is no other way to learn this from CVS - ;; at the moment (version 1.9).) - (string-match "r-..-..-." (nth 8 (file-attributes file)))) + (if (getenv "CVSREAD") 'announce - 'implicit)) + (let ((attrib (file-attributes file))) + (if (and attrib ;; don't check further if FILE doesn't exist + ;; If the file is not writable (despite CVSREAD being + ;; undefined), this is probably because the file is being + ;; "watched" by other developers. + ;; (If vc-mistrust-permissions was t, we actually shouldn't + ;; trust this, but there is no other way to learn this from CVS + ;; at the moment (version 1.9).) + (string-match "r-..-..-." (nth 8 attrib))) + 'announce + 'implicit)))) (defun vc-cvs-mode-line-string (file) "Return string for placement into the modeline for FILE.