Calling revlog.addgroup with an empty changegroup now raises RevlogError.
authorThomas Arendsen Hein <thomas@intevation.de>
Fri, 24 Mar 2006 19:51:05 +0100
changeset 2002 4aab906517c6
parent 2001 a439b7b51530
child 2003 62647394e368
Calling revlog.addgroup with an empty changegroup now raises RevlogError. The empty changegroup can be caused by remote servers dying soon after findincoming, and further code in pull assumes (correctly) that there are new changesets.
mercurial/revlog.py
--- a/mercurial/revlog.py
+++ b/mercurial/revlog.py
@@ -743,7 +743,7 @@ class revlog(object):
         #track the base of the current delta log
         r = self.count()
         t = r - 1
-        node = nullid
+        node = None
 
         base = prev = -1
         start = end = measure = 0
@@ -816,6 +816,8 @@ class revlog(object):
 
         dfh.close()
         ifh.close()
+        if node is None:
+            raise RevlogError(_("group to be added is empty"))
         return node
 
     def strip(self, rev, minlink):