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,
#!/bin/sh
mkdir a
cd a
hg init
echo foo > b
hg add b
hg ci -m "b" -d "1000000 0"
chmod -w .hg/store
cd ..
hg clone a b
chmod +w a/.hg/store # let test clean up
cd b
hg verify