Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/localrepo.py @ 2354:16276b1c0658
Manifest groups may be empty, so don't abort in this case (fixes issue210).
Only abort on empty changelog and file revlogs.
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Wed, 31 May 2006 22:25:20 +0200 |
parents | 5b178298b7f4 |
children | 482d3fb47d80 |
comparison
equal
deleted
inserted
replaced
2353:0c0bfea3f72a | 2354:16276b1c0658 |
---|---|
1508 | 1508 |
1509 # pull off the changeset group | 1509 # pull off the changeset group |
1510 self.ui.status(_("adding changesets\n")) | 1510 self.ui.status(_("adding changesets\n")) |
1511 cor = cl.count() - 1 | 1511 cor = cl.count() - 1 |
1512 chunkiter = changegroup.chunkiter(source) | 1512 chunkiter = changegroup.chunkiter(source) |
1513 cl.addgroup(chunkiter, csmap, tr, 1) # unique | 1513 if cl.addgroup(chunkiter, csmap, tr, 1) is None: |
1514 raise util.Abort(_("received changelog group is empty")) | |
1514 cnr = cl.count() - 1 | 1515 cnr = cl.count() - 1 |
1515 changesets = cnr - cor | 1516 changesets = cnr - cor |
1516 | 1517 |
1517 mf = None | 1518 mf = None |
1518 try: | 1519 try: |
1520 self.manifest.version) | 1521 self.manifest.version) |
1521 | 1522 |
1522 # pull off the manifest group | 1523 # pull off the manifest group |
1523 self.ui.status(_("adding manifests\n")) | 1524 self.ui.status(_("adding manifests\n")) |
1524 chunkiter = changegroup.chunkiter(source) | 1525 chunkiter = changegroup.chunkiter(source) |
1526 # no need to check for empty manifest group here: | |
1527 # if the result of the merge of 1 and 2 is the same in 3 and 4, | |
1528 # no new manifest will be created and the manifest group will | |
1529 # be empty during the pull | |
1525 mf.addgroup(chunkiter, revmap, tr) | 1530 mf.addgroup(chunkiter, revmap, tr) |
1526 | 1531 |
1527 # process the files | 1532 # process the files |
1528 self.ui.status(_("adding file changes\n")) | 1533 self.ui.status(_("adding file changes\n")) |
1529 while 1: | 1534 while 1: |
1532 break | 1537 break |
1533 self.ui.debug(_("adding %s revisions\n") % f) | 1538 self.ui.debug(_("adding %s revisions\n") % f) |
1534 fl = self.file(f) | 1539 fl = self.file(f) |
1535 o = fl.count() | 1540 o = fl.count() |
1536 chunkiter = changegroup.chunkiter(source) | 1541 chunkiter = changegroup.chunkiter(source) |
1537 fl.addgroup(chunkiter, revmap, tr) | 1542 if fl.addgroup(chunkiter, revmap, tr) is None: |
1543 raise util.Abort(_("received file revlog group is empty")) | |
1538 revisions += fl.count() - o | 1544 revisions += fl.count() - o |
1539 files += 1 | 1545 files += 1 |
1540 | 1546 |
1541 # write order here is important so concurrent readers will see | 1547 # write order here is important so concurrent readers will see |
1542 # consistent view of repo | 1548 # consistent view of repo |