fix handling of multiple Content-type headers
This can happen if an error happens while sending
application/mercurial-0.1 content. The error page will
be sent resulting (for at least lighttpd) in the following
headers:
Content-type: application/mercurial-0.1
Content-type: text/html
which result in req.proto = 'application/mercurial-0.1, text/html'
fix issue344
#!/bin/sh
hg init
echo foo > foo
hg add foo
hg commit -m1 -d"0 0"
echo "# should show copy"
hg copy foo bar
hg debugstate|grep '^copy'
echo "# shouldn't show copy"
hg commit -m2 -d"0 0"
hg debugstate|grep '^copy'
echo "# should match"
hg debugindex .hg/store/data/foo.i
hg debugrename bar
echo bleah > foo
echo quux > bar
hg commit -m3 -d"0 0"
echo "# should not be renamed"
hg debugrename bar
hg copy -f foo bar
echo "# should show copy"
hg debugstate|grep '^copy'
hg commit -m3 -d"0 0"
echo "# should show no parents for tip"
hg debugindex .hg/store/data/bar.i
echo "# should match"
hg debugindex .hg/store/data/foo.i
hg debugrename bar
echo "# should show no copies"
hg debugstate|grep '^copy'
exit 0