# HG changeset patch # User Vadim Gelfer # Date 1149110181 25200 # Node ID 4a7bdb1e8dc18724f130406e11bda01848549f9b # Parent 2db831b33e8f33c6d13cfdef3167a5e602e989fa# Parent 16276b1c065897419b974348d96b7169a6ed2aac merge with crew. diff -r 2db831b33e8f -r 4a7bdb1e8dc1 mercurial/archival.py --- a/mercurial/archival.py Wed May 31 10:42:44 2006 -0700 +++ b/mercurial/archival.py Wed May 31 14:16:21 2006 -0700 @@ -156,7 +156,7 @@ if matchfn and not matchfn(name): return if decode: fp = cStringIO.StringIO() - repo.wwrite(None, data, fp) + repo.wwrite(name, data, fp) data = fp.getvalue() archiver.addfile(name, mode, data) diff -r 2db831b33e8f -r 4a7bdb1e8dc1 mercurial/localrepo.py --- a/mercurial/localrepo.py Wed May 31 10:42:44 2006 -0700 +++ b/mercurial/localrepo.py Wed May 31 14:16:21 2006 -0700 @@ -1510,7 +1510,8 @@ self.ui.status(_("adding changesets\n")) cor = cl.count() - 1 chunkiter = changegroup.chunkiter(source) - cl.addgroup(chunkiter, csmap, tr, 1) # unique + if cl.addgroup(chunkiter, csmap, tr, 1) is None: + raise util.Abort(_("received changelog group is empty")) cnr = cl.count() - 1 changesets = cnr - cor @@ -1522,6 +1523,10 @@ # pull off the manifest group self.ui.status(_("adding manifests\n")) chunkiter = changegroup.chunkiter(source) + # no need to check for empty manifest group here: + # if the result of the merge of 1 and 2 is the same in 3 and 4, + # no new manifest will be created and the manifest group will + # be empty during the pull mf.addgroup(chunkiter, revmap, tr) # process the files @@ -1534,7 +1539,8 @@ fl = self.file(f) o = fl.count() chunkiter = changegroup.chunkiter(source) - fl.addgroup(chunkiter, revmap, tr) + if fl.addgroup(chunkiter, revmap, tr) is None: + raise util.Abort(_("received file revlog group is empty")) revisions += fl.count() - o files += 1 diff -r 2db831b33e8f -r 4a7bdb1e8dc1 mercurial/revlog.py --- a/mercurial/revlog.py Wed May 31 10:42:44 2006 -0700 +++ b/mercurial/revlog.py Wed May 31 14:16:21 2006 -0700 @@ -1196,8 +1196,6 @@ start = self.start(base) end = self.end(t) - if node is None: - raise RevlogError(_("group to be added is empty")) return node def strip(self, rev, minlink):