Mercurial > public > mercurial-scm > hg
comparison mercurial/util.py @ 26392:127b59787fd5
changegroup: use a different compression key for BZ in HG10
For "space saving", bundle1 "strip" the first two bytes of the BZ stream since
they always are 'BZ'. So the current code boostrap the uncompressor with 'BZ'.
This hack is impractical in more generic case so we move it in a dedicated
"decompression".
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Wed, 23 Sep 2015 11:33:30 -0700 |
parents | 60dd8e3977f0 |
children | 1138e1d05207 |
comparison
equal
deleted
inserted
replaced
26391:f206543d8380 | 26392:127b59787fd5 |
---|---|
2376 # we put it back for good measure. | 2376 # we put it back for good measure. |
2377 d.decompress('BZ') | 2377 d.decompress('BZ') |
2378 return d | 2378 return d |
2379 | 2379 |
2380 decompressors = {None: lambda fh: fh, | 2380 decompressors = {None: lambda fh: fh, |
2381 'BZ': _makedecompressor(_bz2), | 2381 '_truncatedBZ': _makedecompressor(_bz2), |
2382 'BZ': _makedecompressor(lambda: bz2.BZ2Decompressor()), | |
2382 'GZ': _makedecompressor(lambda: zlib.decompressobj()), | 2383 'GZ': _makedecompressor(lambda: zlib.decompressobj()), |
2383 } | 2384 } |
2384 # also support the old form by courtesies | 2385 # also support the old form by courtesies |
2385 decompressors['UN'] = decompressors[None] | 2386 decompressors['UN'] = decompressors[None] |
2386 | 2387 |