inst.reason isn't alway in the form (errno, strerror)
urllib2.urlopen("foobar://foo") is an example
where inst.reason is a string
fix issue383
#!/bin/sh
unset HGUSER
EMAIL="My Name <myname@example.com>"
export EMAIL
hg init test
cd test
touch asdf
hg add asdf
hg commit -d '1000000 0' -m commit-1
hg tip
unset EMAIL
echo 1234 > asdf
hg commit -d '1000000 0' -u "foo@bar.com" -m commit-1
hg tip
echo "[ui]" >> .hg/hgrc
echo "username = foobar <foo@bar.com>" >> .hg/hgrc
echo 12 > asdf
hg commit -d '1000000 0' -m commit-1
hg tip
echo 1 > asdf
hg commit -d '1000000 0' -u "foo@bar.com" -m commit-1
hg tip
echo 123 > asdf
rm .hg/hgrc
hg commit -d '1000000 0' -m commit-1 2>&1 | sed -e "s/'[^']*'/user@host/"