Mercurial > hg
comparison mercurial/changegroup.py @ 20978:5b58714e97ed
changegroup: add "vfs" argument to "readbundle()" to pass relative filename
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Sun, 09 Mar 2014 01:03:28 +0900 |
parents | c20f4898631e |
children | 1e28ec9744bf |
comparison
equal
deleted
inserted
replaced
20977:a57dcd11be34 | 20978:5b58714e97ed |
---|---|
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) |