merge with crew.
--- 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)
--- 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
--- 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):