equal
deleted
inserted
replaced
212 if len(d) < n: |
212 if len(d) < n: |
213 d += readexactly(self._fh, n - len(d)) |
213 d += readexactly(self._fh, n - len(d)) |
214 return d |
214 return d |
215 return readexactly(self._fh, n) |
215 return readexactly(self._fh, n) |
216 |
216 |
217 def readbundle(fh, fname): |
217 def readbundle(fh, fname, vfs=None): |
218 header = readexactly(fh, 6) |
218 header = readexactly(fh, 6) |
219 |
219 |
220 if not fname: |
220 if not fname: |
221 fname = "stream" |
221 fname = "stream" |
222 if not header.startswith('HG') and header.startswith('\0'): |
222 if not header.startswith('HG') and header.startswith('\0'): |
223 fh = headerlessfixup(fh, header) |
223 fh = headerlessfixup(fh, header) |
224 header = "HG10UN" |
224 header = "HG10UN" |
|
225 elif vfs: |
|
226 fname = vfs.join(fname) |
225 |
227 |
226 magic, version, alg = header[0:2], header[2:4], header[4:6] |
228 magic, version, alg = header[0:2], header[2:4], header[4:6] |
227 |
229 |
228 if magic != 'HG': |
230 if magic != 'HG': |
229 raise util.Abort(_('%s: not a Mercurial bundle') % fname) |
231 raise util.Abort(_('%s: not a Mercurial bundle') % fname) |