fix backtrace printed when cannot get lock.
change lock error handling code so exceptions have useful info and
exception handling in one place.
add test case for when cannot get lock.
#!/bin/sh
hg init
echo foo > a
echo foo > b
hg add a b
hg ci -m "test" -d "1000000 0"
echo blah > a
hg ci -m "branch a" -d "1000000 0"
hg co 0
echo blah > b
hg ci -m "branch b" -d "1000000 0"
HGMERGE=true hg up -m 1
hg ci -m "merge b/a -> blah" -d "1000000 0"
hg co 1
HGMERGE=true hg up -m 2
hg ci -m "merge a/b -> blah" -d "1000000 0"
hg log
hg debugindex .hg/00changelog.i
echo
echo 1
hg manifest 1
echo 2
hg manifest 2
echo 3
hg manifest 3
echo 4
hg manifest 4
echo
hg debugindex .hg/data/a.i
hg verify