emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/vc-bzr.el,v


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/vc-bzr.el,v
Date: Sat, 29 Mar 2008 01:09:48 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        08/03/29 01:09:47

Index: vc-bzr.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/vc-bzr.el,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -b -r1.37 -r1.38
--- vc-bzr.el   28 Mar 2008 19:51:20 -0000      1.37
+++ vc-bzr.el   29 Mar 2008 01:09:45 -0000      1.38
@@ -169,26 +169,28 @@
                              "\0"
                              "[^\0]*\0"           ;id?
                              "\\([^\0]*\\)\0"     ;"a/f/d", a=removed?
-                             "\\([^\0]*\\)\0"     ;sha1?
+                             "[^\0]*\0"       ;sha1 (empty if conflicted)?
                              "\\([^\0]*\\)\0"     ;size?
                              "[^\0]*\0"           ;"y/n", executable?
                              "[^\0]*\0"           ;?
                              "\\([^\0]*\\)\0"     ;"a/f/d" a=added?
-                             "[^\0]*\0"           ;sha1 again?
+                             "\\([^\0]*\\)\0" ;sha1 again?
                              "[^\0]*\0"           ;size again?
                              "[^\0]*\0"           ;"y/n", executable again?
-                             "[^\0]*\0$")         ;last revid?
+                             "[^\0]*\0"       ;last revid?
+                             ;; There are more fields when merges are pending.
+                             )
                      nil t)
-                    ;; FIXME: figure out which of the first or the second
-                    ;; "size" and "sha1" we should use.  They seem to always
-                    ;; be equal, but there's probably a good reason why
-                    ;; there are 2 entries.
+                    ;; Apparently the second sha1 is the one we want: when
+                    ;; there's a conflict, the first sha1 is absent (and the
+                    ;; first size seems to correspond to the file with
+                    ;; conflict markers).
                     (cond
-                     ((eq (char-after (match-beginning 4)) ?a) 'removed)
+                     ((eq (char-after (match-beginning 1)) ?a) 'removed)
                      ((eq (char-after (match-beginning 3)) ?a) 'added)
-                     ((and (eq (string-to-number (match-string 3))
+                     ((and (eq (string-to-number (match-string 2))
                                (nth 7 (file-attributes file)))
-                           (equal (match-string 2)
+                           (equal (match-string 4)
                                   (vc-bzr-sha1 file)))
                       'up-to-date)
                      (t 'edited))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]