Revert removal of multi-match discard heuristic in 27af01
authorRené Scharfe <rene.scharfe@lsrfire.ath.cx>
Sun, 25 Sep 2011 13:39:08 +0000 (21:39 +0800)
committerJunio C Hamano <gitster@pobox.com>
Mon, 26 Sep 2011 18:38:14 +0000 (11:38 -0700)
commitc5aa90682f82fe0dabdc0280be93568d52efddfc
tree1aad9b101300368bdbb9c60f84f48f3279ef9ca5
parent27af01d552331eacf1ed2671b2b4b6ad4c268106
Revert removal of multi-match discard heuristic in 27af01

27af01d (xdiff/xprepare: improve O(n*m) performance in
xdl_cleanup_records(), 2011-08-17) was supposed to be a performance
boost only. However, it unexpectedly changed the behaviour of diff.

Revert a part of 27af01d that removes logic that mark lines as
"multi-match" (ie. dis[i] == 2). This was preventing the multi-match
discard heuristic (performed in xdl_cleanup_records() and
xdl_clean_mmatch()) from executing.

Reported-by: Alexander Pepper <pepper@inf.fu-berlin.de>
Signed-off-by: René Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
xdiff/xprepare.c