Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-issue322 @ 4131:1ca664c964e0
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,
author | Erling Ellingsen <erlingalf@gmail.com> |
---|---|
date | Tue, 20 Feb 2007 22:20:16 +0100 |
parents | 9dcf9d45cab8 |
children | 7a7d4937272b |
line wrap: on
line source
#!/bin/sh # http://www.selenic.com/mercurial/bts/issue322 echo % file replaced with directory hg init a cd a echo a > a hg commit -Ama rm a mkdir a echo a > a/a echo % should fail - would corrupt dirstate hg add a/a cd .. echo % directory replaced with file hg init c cd c mkdir a echo a > a/a hg commit -Ama rm -r a echo a > a echo % should fail - would corrupt dirstate hg add a cd .. echo % directory replaced with file hg init d cd d mkdir b mkdir b/c echo a > b/c/d hg commit -Ama rm -r b echo a > b echo % should fail - would corrupt dirstate hg add b exit 0