[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/vc-bzr.el,v [EMACS_22_BASE]
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/vc-bzr.el,v [EMACS_22_BASE] |
Date: |
Thu, 02 Aug 2007 17:08:56 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Branch: EMACS_22_BASE
Changes by: Stefan Monnier <monnier> 07/08/02 17:08:55
Index: vc-bzr.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/vc-bzr.el,v
retrieving revision 1.11.2.2
retrieving revision 1.11.2.3
diff -u -b -r1.11.2.2 -r1.11.2.3
--- vc-bzr.el 31 Jul 2007 15:26:04 -0000 1.11.2.2
+++ vc-bzr.el 2 Aug 2007 17:08:52 -0000 1.11.2.3
@@ -105,25 +105,39 @@
(apply 'vc-do-command buffer okstatus vc-bzr-program
file-or-list bzr-command (append vc-bzr-program-args args))))
-
;;;###autoload
-(defconst vc-bzr-admin-dirname ".bzr") ; FIXME: "_bzr" on w32?
+(defconst vc-bzr-admin-dirstate ".bzr/checkout/dirstate") ; "_bzr" on w32??
;;;###autoload (defun vc-bzr-registered (file)
-;;;###autoload (if (vc-find-root file vc-bzr-admin-dirname)
+;;;###autoload (if (vc-find-root file vc-bzr-admin-dirstate)
;;;###autoload (progn
;;;###autoload (load "vc-bzr")
;;;###autoload (vc-bzr-registered file))))
-
(defun vc-bzr-root-dir (file)
"Return the root directory in the hierarchy above FILE.
Return nil if there isn't one."
- (vc-find-root file vc-bzr-admin-dirname))
+ (vc-find-root file vc-bzr-admin-dirstate))
(defun vc-bzr-registered (file)
"Return non-nil if FILE is registered with bzr."
- (if (vc-bzr-root-dir file) ; Short cut.
- (vc-bzr-state file))) ; Expensive.
+ (let ((root (vc-bzr-root-dir file)))
+ (and root ; Short cut.
+ ;; This looks at internal files. May break if they change
+ ;; their format.
+ (with-temp-buffer
+ (insert-file-contents
+ (expand-file-name vc-bzr-admin-dirstate root))
+ (goto-char (point-min))
+ (let* ((relfile (file-relative-name file root))
+ (reldir (file-name-directory relfile)))
+ (re-search-forward
+ (concat "^ "
+ (if reldir (regexp-quote (directory-file-name reldir)))
+ "