Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 18:20:40 +0100] rev 834
Use sh instead of bash in tests.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 18:13:17 +0100] rev 833
Removed special FIXME handling in run-tests, added bug info to .out files.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 18:06:49 +0100] rev 832
Handle broken pipe on pressing Ctrl-C with e.g. 'hg log|grep something'.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 17:43:05 +0100] rev 831
Cleaned up trap handling:
- Use numbers instead of signal names
- No need to explicitly call "cleanup_exit RC" to exit with return code RC.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 17:23:31 +0100] rev 830
If rejects are empty after using the editor, merge with diff+patch was ok.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 17:16:41 +0100] rev 829
Shortened hgmerge a little bit.
Thomas Arendsen Hein <thomas@intevation.de> [Thu, 04 Aug 2005 16:56:44 +0100] rev 828
Hide error message of type command.
"Wallace, Eric S" <eric.s.wallace@intel.com> [Thu, 04 Aug 2005 13:25:59 -0800] rev 827
Fix array overflow bug in bdiff
I ran into a bug while importing a large repository into mercurial.
The diff algorithm does not allocate a big enough array of hunks
for some test cases. This results in memory corruption, and possibly,
as in my case, a seg fault.
You should be able to reproduce this problem with any case of more
than a few lines that follows this pattern:
a b
= =
1 1
2
2 3
4
3 5
.
4 .
.
5
.
.
.
I.e., "a" has blank lines on every other line that have been removed in
"b". In this case, the number of matching hunks is equal to the number
of lines in "b". This is more than ((an + bn)/4 + 2). I'm not sure what
motivates this formula, but when I changed it to the smaller of an or
bn (+ 1), it works.
[comment added by mpm]