aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlivier Certner2023-04-06 10:52:23 +0200
committerDmitry Gutov2023-04-19 03:47:20 +0300
commit648f58294bbbcd2b439019e93c1dccac5d9cac9d (patch)
treedc4d4be097a5958aaf5968e184e17edf83773092
parent7a921b6b284a8b5755c61045f4db03f09ff0a386 (diff)
downloademacs-648f58294bbbcd2b439019e93c1dccac5d9cac9d.tar.gz
emacs-648f58294bbbcd2b439019e93c1dccac5d9cac9d.zip
VC: CVS: Fix parsing of 'cvs -qn update' for missing files for 1.12
* lisp/vc/vc-cvs.el (vc-cvs-after-dir-status): Fix the name reported for missing files in the case of CVS 1.12.3+ where name is quoted in the warning line (it was not before this version). Use instead the following U line, where the name is never quoted on all versions.
-rw-r--r--lisp/vc/vc-cvs.el11
1 files changed, 7 insertions, 4 deletions
diff --git a/lisp/vc/vc-cvs.el b/lisp/vc/vc-cvs.el
index b826390a034..c6056c1e5bd 100644
--- a/lisp/vc/vc-cvs.el
+++ b/lisp/vc/vc-cvs.el
@@ -1029,13 +1029,16 @@ state."
1029 (cdr (assoc (char-after) translation))) 1029 (cdr (assoc (char-after) translation)))
1030 result) 1030 result)
1031 (cond 1031 (cond
1032 ((looking-at "cvs update: warning: \\(.*\\) was lost") 1032 ((looking-at "cvs update: warning: .* was lost")
1033 ;; Format is: 1033 ;; Format is:
1034 ;; cvs update: warning: FILENAME was lost 1034 ;; cvs update: warning: FILENAME was lost
1035 ;; U FILENAME 1035 ;; U FILENAME
1036 (push (list (match-string 1) 'missing) result) 1036 ;; with FILENAME in the first line possibly enclosed in
1037 ;; Skip the "U" line 1037 ;; quotes (since CVS 1.12.3). To avoid problems, use the U
1038 (forward-line 1)) 1038 ;; line where name is never quoted.
1039 (forward-line 1)
1040 (when (looking-at "^U \\(.*\\)$")
1041 (push (list (match-string 1) 'missing) result)))
1039 ((looking-at "cvs update: New directory `\\(.*\\)' -- ignored") 1042 ((looking-at "cvs update: New directory `\\(.*\\)' -- ignored")
1040 (push (list (match-string 1) 'unregistered) result)))) 1043 (push (list (match-string 1) 'unregistered) result))))
1041 (forward-line 1)) 1044 (forward-line 1))