make revlog.addgroup pass its file handles to addrevision
This should fix issue255.
It looks like the problem there happens when addgroup calls addrevision
to add a full revision, and addrevision decides to split the index file
into a .i/.d pair. Since addgroup has an open file handle for the
index file, the renaming of the new .i file to its final name fails on
windows.
#!/bin/sh
# Test for changeset ba7c74081861
# (update dirstate correctly for non-branchmerge updates)
hg init a
cd a
echo a > a
hg add a
hg commit -m a
cd ..
hg clone a b
cd a
hg mv a b
hg commit -m move
echo b >> b
hg commit -m b
cd ../b
hg pull ../a
hg update