localrepo: fix bad manifest delta generation (
issue1433)
The issue came from the
720ae5085ee3 fix for
issue586 working only for
manifest.add() fast path, where the incorrect removed file set was
ignored. This path was no longer taken after
716a1296e182 refactoring.
#!/bin/sh
hg init repo
cd repo
echo a > a
hg ci -qAm 'add a'
echo b > b
hg ci -qAm 'add b'
hg up -qC 0
hg rm a
hg ci -m 'rm a'
hg up -qC 1
rm a
echo '% local deleted a file, remote removed'
hg merge # should fail, since there are deleted files
hg -v merge --force
echo % should show a as removed
hg st
hg ci -m merge
echo % manifest. should not have a:
hg manifest