Skip to content
  • Linus Torvalds's avatar
    Re(-re)*fix trim_common_tail() · d2f82950
    Linus Torvalds authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    The tar-ball and the git archive itself is fine, but yes, the diff from
    2.6.23 to 2.6.24-rc6 is bad. It's the "trim_common_tail()" optimization
    that has caused way too much pain.
    
    Very interesting breakage. The patch was actually "correct" in a (rather
    limited) technical sense, but the context at the end was missing because
    while the trim_common_tail() code made sure to keep enough common context
    to allow a valid diff to be generated, the diff machinery itself could
    decide that it could generate the diff differently than the "obvious"
    solution.
    
    Thee sad fact is that the git optimization (which is very important for
    "git blame", which needs no context), is only really valid for that one
    case where we really don't need any context.
    
    [jc: since this is shared with "git diff -U0" codepath, context recovery
    to the end of line needs to be done even for zero context case.]
    
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    d2f82950