changeset 95425:72ac0c4a8ecd

(vc-cvs-state-heuristic, vc-cvs-parse-status): Try and return `unregistered' when applicable.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Fri, 30 May 2008 16:21:49 +0000
parents f03be7461a37
children 92edde3e7af6
files lisp/ChangeLog lisp/vc-cvs.el
diffstat 2 files changed, 8 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri May 30 14:55:07 2008 +0000
+++ b/lisp/ChangeLog	Fri May 30 16:21:49 2008 +0000
@@ -1,5 +1,8 @@
 2008-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+	* vc-cvs.el (vc-cvs-state-heuristic, vc-cvs-parse-status): Try and
+	return `unregistered' when applicable.
+
 	* emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
 	Don't encourage naming variables with "-flag".
 
@@ -295,7 +298,7 @@
 
 	* vc.el (vc-delete-file): Don't try to resynch the buffer.
 
-2008-05-23  Paul R  <paul.r.ml@gmail.com>
+2008-05-23  Paul Rivier  <paul.r.ml@gmail.com>
 
 	* textmodes/reftex-vars.el (reftex-extra-bindings-prefix): New var.
 	* textmodes/reftex.el (reftex-extra-bindings-map): New var.
--- a/lisp/vc-cvs.el	Fri May 30 14:55:07 2008 +0000
+++ b/lisp/vc-cvs.el	Fri May 30 16:21:49 2008 +0000
@@ -231,6 +231,7 @@
     (cond
      ((equal checkout-time lastmod) 'up-to-date)
      ((string= (vc-working-revision file) "0") 'added)
+     ((null checkout-time) 'unregistered)
      (t 'edited))))
 
 (defun vc-cvs-working-revision (file)
@@ -800,9 +801,8 @@
        ((re-search-forward "\\=\\([^ \t]+\\)" nil t)
 	(setq file (expand-file-name (match-string 1)))
 	(vc-file-setprop file 'vc-backend 'CVS)
-	(if (not (re-search-forward "\\=[ \t]+Status: \\(.*\\)" nil t))
-	    (setq status "Unknown")
-	  (setq status (match-string 1)))
+	(setq status(if (re-search-forward "\\=[ \t]+Status: \\(.*\\)" nil t)
+                        (match-string 1) "Unknown"))
 	(when (and full
 		   (re-search-forward
 		    "\\(RCS Version\\|RCS Revision\\|Repository revision\\):\
@@ -823,6 +823,7 @@
 	  ((string-match "Locally Added" status)                'added)
 	  ((string-match "Locally Removed" status)              'removed)
 	  ((string-match "File had conflicts " status)          'conflict)
+          ((string-match "Unknown" status)			'unregistered)
 	  (t 'edited))))))))
 
 (defun vc-cvs-after-dir-status (update-function)