Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/manifest.py @ 4159:a896607d3ec3
fix manifest.find
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Wed, 07 Mar 2007 15:25:58 -0300 |
parents | 6b4127c7d52a |
children | 1b5c38e9d7aa |
comparison
equal
deleted
inserted
replaced
4158:d8515e374204 | 4159:a896607d3ec3 |
---|---|
104 else: | 104 else: |
105 return (lo, lo) | 105 return (lo, lo) |
106 | 106 |
107 def find(self, node, f): | 107 def find(self, node, f): |
108 '''look up entry for a single file efficiently. | 108 '''look up entry for a single file efficiently. |
109 return (node, flag) pair if found, (None, None) if not.''' | 109 return (node, flags) pair if found, (None, None) if not.''' |
110 if self.mapcache and node == self.mapcache[0]: | 110 if self.mapcache and node == self.mapcache[0]: |
111 return self.mapcache[1].get(f), self.mapcache[1].flags(f) | 111 return self.mapcache[1].get(f), self.mapcache[1].flags(f) |
112 text = self.revision(node) | 112 text = self.revision(node) |
113 start, end = self._search(text, f) | 113 start, end = self._search(text, f) |
114 if start == end: | 114 if start == end: |
115 return None, None | 115 return None, None |
116 l = text[start:end] | 116 l = text[start:end] |
117 f, n = l.split('\0') | 117 f, n = l.split('\0') |
118 return bin(n[:40]), n[40:-1] == 'x' | 118 return bin(n[:40]), n[40:-1] |
119 | 119 |
120 def add(self, map, transaction, link, p1=None, p2=None, | 120 def add(self, map, transaction, link, p1=None, p2=None, |
121 changed=None): | 121 changed=None): |
122 # apply the changes collected during the bisect loop to our addlist | 122 # apply the changes collected during the bisect loop to our addlist |
123 # return a delta suitable for addrevision | 123 # return a delta suitable for addrevision |