Browse Source

[PATCH] Fix tweak in similarity estimator.

There was a screwy math bug in the estimator that confused what
-C1 meant and what -C9 meant, only in one of the early "cheap"
check, which resulted in quite confusing behaviour.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
maint
Junio C Hamano 20 years ago committed by Linus Torvalds
parent
commit
cd1870edb6
  1. 4
      diffcore-rename.c

4
diffcore-rename.c

@ -77,12 +77,12 @@ static int estimate_similarity(struct diff_filespec *src,


/* We would not consider edits that change the file size so /* We would not consider edits that change the file size so
* drastically. delta_size must be smaller than * drastically. delta_size must be smaller than
* minimum_score/MAX_SCORE * min(src->size, dst->size). * (MAX_SCORE-minimum_score)/MAX_SCORE * min(src->size, dst->size).
* Note that base_size == 0 case is handled here already * Note that base_size == 0 case is handled here already
* and the final score computation below would not have a * and the final score computation below would not have a
* divide-by-zero issue. * divide-by-zero issue.
*/ */
if (base_size * minimum_score < delta_size * MAX_SCORE) if (base_size * (MAX_SCORE-minimum_score) < delta_size * MAX_SCORE)
return 0; return 0;


delta = diff_delta(src->data, src->size, delta = diff_delta(src->data, src->size,

Loading…
Cancel
Save