##// END OF EJS Templates
don't return uninitialized memory from bdiff.blocks()...
don't return uninitialized memory from bdiff.blocks() bdiff.blocks() returns a dummy match at the end of both files; the length of that chunk is never set, so it will sometimes contain random heap garbage. There are apparently workarounds for this elsewhere: # bdiff sometimes gives huge matches past eof, this check eats them,

File last commit:

r3951:cb66641c default
r4131:1ca664c9 default
Show More
test-grep
30 lines | 625 B | text/plain | TextLexer
#!/bin/sh
mkdir t
cd t
hg init
echo import > port
hg add port
hg commit -m 0 -u spam -d '0 0'
echo export >> port
hg commit -m 1 -u eggs -d '1 0'
echo export > port
echo vaportight >> port
echo 'import/export' >> port
hg commit -m 2 -u spam -d '2 0'
echo 'import/export' >> port
hg commit -m 3 -u eggs -d '3 0'
head -n 3 port > port1
mv port1 port
hg commit -m 4 -u spam -d '4 0'
hg grep port port
hg grep --all -nu port port
hg grep import port
hg cp port port2
hg commit -m 4 -u spam -d '5 0'
echo '% follow'
hg grep -f 'import$' port2
echo deport >> port2
hg commit -m 5 -u eggs -d '6 0'
hg grep -f --all -nu port port2