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
#header#<title>Mercurial Error</title></head><body><h2>Mercurial Error</h2><p>An error occured while processing your request:</p><p>#error|escape#</p>#footer#