169 |
(case-fold-search nil)) |
(case-fold-search nil)) |
170 |
(if (file-readable-p (expand-file-name "CVS/Entries" dirname)) |
(if (file-readable-p (expand-file-name "CVS/Entries" dirname)) |
171 |
(with-temp-buffer |
(with-temp-buffer |
172 |
(vc-insert-file (expand-file-name "CVS/Entries" dirname)) |
(vc-cvs-get-entries dirname) |
173 |
(goto-char (point-min)) |
(goto-char (point-min)) |
174 |
(cond |
(cond |
175 |
((re-search-forward |
((re-search-forward |
781 |
(defun vc-cvs-dir-state-heuristic (dir) |
(defun vc-cvs-dir-state-heuristic (dir) |
782 |
"Find the CVS state of all files in DIR, using only local information." |
"Find the CVS state of all files in DIR, using only local information." |
783 |
(with-temp-buffer |
(with-temp-buffer |
784 |
(vc-insert-file (expand-file-name "CVS/Entries" dir)) |
(vc-cvs-get-entries dir) |
785 |
(goto-char (point-min)) |
(goto-char (point-min)) |
786 |
(while (not (eobp)) |
(while (not (eobp)) |
787 |
;; CVS-removed files are not taken under VC control. |
;; CVS-removed files are not taken under VC control. |
791 |
(vc-cvs-parse-entry file t)))) |
(vc-cvs-parse-entry file t)))) |
792 |
(forward-line 1)))) |
(forward-line 1)))) |
793 |
|
|
794 |
|
(defun vc-cvs-get-entries (dir) |
795 |
|
"Insert the CVS/Entries file from below DIR into the current buffer. |
796 |
|
This function ensures that the correct coding system is used for that, |
797 |
|
which may not be the one that is used for the files' contents. |
798 |
|
CVS/Entries should only be accessed through this function." |
799 |
|
(let ((coding-system-for-read (or file-name-coding-system |
800 |
|
default-file-name-coding-system))) |
801 |
|
(vc-insert-file (expand-file-name "CVS/Entries" dir)))) |
802 |
|
|
803 |
(defun vc-cvs-valid-symbolic-tag-name-p (tag) |
(defun vc-cvs-valid-symbolic-tag-name-p (tag) |
804 |
"Return non-nil if TAG is a valid symbolic tag name." |
"Return non-nil if TAG is a valid symbolic tag name." |
805 |
;; According to the CVS manual, a valid symbolic tag must start with |
;; According to the CVS manual, a valid symbolic tag must start with |