On Tue, 18 Sep 2007, Jeff King wrote: > > With this patch: > > diff --git a/diffcore-rename.c b/diffcore-rename.c > index 6bde439..531a844 100644 > --- a/diffcore-rename.c > +++ b/diffcore-rename.c > @@ -362,10 +362,7 @@ void diffcore_rename(struct diff_options *options) > m->score = estimate_similarity(one, two, > minimum_score); > m->name_score = basename_same(one, two); > - diff_free_filespec_data(one); > } > - /* We do not need the text anymore */ > - diff_free_filespec_data(two); > dst_cnt++; > } > /* cost matrix sorted by most to least similar pair */ > > My 20-minute diff becomes a 2-minute diff. I think this is a reasonable patch, but only now *after* we limit the rename matrix. The whole reason for freeing the filespec data was to avoid exploding the memory usage, but now that we aggressively limit the number of renames in flight anyway, I think we can probably remove the code that frees the file data in between all the rename similarity analysis. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html