comparison mercurial/revlog.py @ 119:c7a66f9752a4

Add code to retrieve or construct a revlog delta
author mpm@selenic.com
date Fri, 20 May 2005 17:40:24 -0800
parents 2ac722ad1a9d
children f6d1f8a84372
comparison
equal deleted inserted replaced
118:a0e57df96e96 119:c7a66f9752a4
186 return mdiff.textdiff(a, b) 186 return mdiff.textdiff(a, b)
187 187
188 def patches(self, t, pl): 188 def patches(self, t, pl):
189 return mdiff.patches(t, pl) 189 return mdiff.patches(t, pl)
190 190
191 def delta(self, node):
192 r = self.rev(node)
193 b = self.base(r)
194 if r == b:
195 return self.diff(self.revision(self.node(r - 1)),
196 self.revision(node))
197 else:
198 f = self.opener(self.datafile)
199 f.seek(self.start(r))
200 data = f.read(self.length(r))
201 return decompress(data)
202
191 def revision(self, node): 203 def revision(self, node):
192 if node == nullid: return "" 204 if node == nullid: return ""
193 if self.cache and self.cache[0] == node: return self.cache[2] 205 if self.cache and self.cache[0] == node: return self.cache[2]
194 206
195 text = None 207 text = None