##// END OF EJS Templates
fix traceback in hgweb when URL doesn't end in one of the archive specs...
fix traceback in hgweb when URL doesn't end in one of the archive specs If the last n charecters of the URL doesn't match an entry in archive_specs req.form never has a key 'type'. When achive() looks up 'type' in the form dict it causes a traceback rather than printing an error message.

File last commit:

r5384:e3a0c092 default
r6669:782dbbdf default
Show More
test-http-clone-r
78 lines | 1.4 KiB | text/plain | TextLexer
#!/bin/sh
hg init remote
cd remote
echo "# creating 'remote'"
cat >>afile <<EOF
0
EOF
hg add afile
hg commit -m "0.0"
cat >>afile <<EOF
1
EOF
hg commit -m "0.1"
cat >>afile <<EOF
2
EOF
hg commit -m "0.2"
cat >>afile <<EOF
3
EOF
hg commit -m "0.3"
hg update -C 0
cat >>afile <<EOF
1
EOF
hg commit -m "1.1"
cat >>afile <<EOF
2
EOF
hg commit -m "1.2"
cat >fred <<EOF
a line
EOF
cat >>afile <<EOF
3
EOF
hg add fred
hg commit -m "1.3"
hg mv afile adifferentfile
hg commit -m "1.3m"
hg update -C 3
hg mv afile anotherfile
hg commit -m "0.3m"
hg debugindex .hg/store/data/afile.i
hg debugindex .hg/store/data/adifferentfile.i
hg debugindex .hg/store/data/anotherfile.i
hg debugindex .hg/store/data/fred.i
hg debugindex .hg/store/00manifest.i
hg verify
echo "# Starting server"
hg serve -p $HGPORT -d --pid-file=../hg1.pid
cd ..
cat hg1.pid >> $DAEMON_PIDS
echo "# clone remote via stream"
for i in 0 1 2 3 4 5 6 7 8; do
hg clone -r "$i" http://localhost:$HGPORT/ test-"$i" 2>&1
if cd test-"$i"; then
hg verify
cd ..
fi
done
cd test-8
hg pull ../test-7
hg verify
cd ..
cd test-1
hg pull -r 4 http://localhost:$HGPORT/ 2>&1 | sed -e 's,:[0-9][0-9]*/,/,'
hg verify
hg pull http://localhost:$HGPORT/ 2>&1 | sed -e 's,:[0-9][0-9]*/,/,'
cd ..
cd test-2
hg pull -r 5 http://localhost:$HGPORT/ 2>&1 | sed -e 's,:[0-9][0-9]*/,/,'
hg verify
hg pull http://localhost:$HGPORT/ 2>&1 | sed -e 's,:[0-9][0-9]*/,/,'
hg verify
cd ..