[PATCH 4 of 7] revlog: append delta against p1

in3xes at gmail.com in3xes at gmail.com
Fri Aug 6 07:00:36 UTC 2010


# HG changeset patch
# User Pradeepkumar Gayam <in3xes at gmail.com>
# Date 1281077138 -19800
# Node ID a3ae8ae82cbae32f9d5abf367c5cf8affb73040f
# Parent  9f91eb15f5d051492f5d5590603a66b9ea87001c
revlog: append delta against p1

diff -r 9f91eb15f5d0 -r a3ae8ae82cba mercurial/revlog.py
--- a/mercurial/revlog.py	Fri Aug 06 12:12:35 2010 +0530
+++ b/mercurial/revlog.py	Fri Aug 06 12:15:38 2010 +0530
@@ -1156,10 +1156,15 @@
         prev = curr - 1
         base = self.base(prev)
         offset = self.end(prev)
+        flags = 0
 
         if curr:
             if not d:
-                ptext = self.revision(self.node(prev))
+                if self._parentdelta:
+                    ptext = self.revision(p1)
+                    flags = REVIDX_PARENTDELTA
+                else:
+                    ptext = self.revision(self.node(prev))
                 d = mdiff.textdiff(ptext, text)
             data = compress(d)
             l = len(data[1]) + len(data[0])
@@ -1174,7 +1179,7 @@
             l = len(data[1]) + len(data[0])
             base = curr
 
-        e = (offset_type(offset, 0), l, len(text),
+        e = (offset_type(offset, flags), l, len(text),
              base, link, self.rev(p1), self.rev(p2), node)
         self.index.insert(-1, e)
         self.nodemap[node] = curr



More information about the Mercurial-devel mailing list