Trap OSError when deleting env vars
On the other OS, it seems that case insensitivity for
environment vars can bite users when using some unknown
combination of python 2.4.1 and win2kSP4+minsys (and
probably other vversions of these softwares).
The best way to avoid problems in those weird cases is to
ignore OSError exception during env var deletion.
#!/usr/bin/env python
import sys, os
from mercurial import hg
f = sys.argv[1]
r1 = hg.revlog(open, f + ".i", f + ".d")
r2 = hg.revlog(open, f + ".i2", f + ".d2")
tr = hg.transaction(open, "journal")
for i in xrange(r1.count()):
n = r1.node(i)
p1, p2 = r1.parents(n)
l = r1.linkrev(n)
t = r1.revision(n)
n2 = r2.addrevision(t, tr, l, p1, p2)
tr.close()
os.rename(f + ".i", f + ".i.old")
os.rename(f + ".d", f + ".d.old")
os.rename(f + ".i2", f + ".i")
os.rename(f + ".d2", f + ".d")