Kai YU wrote: > This repair does fix the bug. However, this fix tries to adjust the > final linbuf[line] setting rather than corrects the error cause.
Hmm, sorry, what is the "error cause" here? > Instead, we suggest withdraw the change introduced in 2.9 may be a better > choice. We can't simply do that, because the change introduced for 2.9 in 2006 <http://git.savannah.gnu.org/cgit/diffutils.git/commit/?id=58d0483b621792959a485876aee05d799b6470de> fixed a serious performance bug that was earlier introduced in 2001 <http://git.savannah.gnu.org/cgit/diffutils.git/commit/?id=420373575c3761cc50e762084400056affb968a0>. The 2006 change simply reverts that (clearly incorrect) part of the 2001 change. Perhaps there's a better fix than the combination of the 2006 and later changes, but simply going back to the 2001 version would cause such a performance hit that we can't really do that. > Besides, the value of filevec[0].suffix_begin in 3.0 is not equal to > that in 2.8.1, which may cause potential bugs in the future. Could you please give more details about the potential bugs that you think might happen? Sorry, I don't see them. filevec[0].suffix_begin is supposed to be a pointer to the first line of text that is in the common suffix (not counting the first few lines of the suffix, as specified by the complicated expression involving HORIZON_LINES). Does the current code not do this correctly in some cases? Can you supply an example test case?
