diff -r d545fa1426b9 -r dfb796786337 mercurial/bundlerepo.py --- a/mercurial/bundlerepo.py Mon Mar 20 17:14:58 2006 +0100 +++ b/mercurial/bundlerepo.py Tue Mar 21 06:03:33 2006 +0100 @@ -174,12 +174,20 @@ f = open(bundlename, "rb") s = os.fstat(f.fileno()) self.bundlefile = f - header = self.bundlefile.read(4) - if header == "HG10": + header = self.bundlefile.read(6) + if not header.startswith("HG"): + raise util.Abort(_("%s: not a Mercurial bundle file") % bundlename) + elif not header.startswith("HG10"): + raise util.Abort(_("%s: unknown bundle version") % bundlename) + elif header == "HG10BZ": raise util.Abort(_("%s: compressed bundle not supported") % bundlename) - elif header != "HG11": - raise util.Abort(_("%s: not a Mercurial bundle file") % bundlename) + elif header == "HG10UN": + # uncompressed bundle supported + pass + else: + raise util.Abort(_("%s: unknown bundle compression type") + % bundlename) self.changelog = bundlechangelog(self.opener, self.bundlefile) self.manifest = bundlemanifest(self.opener, self.bundlefile, self.changelog.rev)