Commit 7edb74d3 by Russell Belfer

Update rename src map for any split src

When using a rename source that is actually a to-be-split record,
we have to update the best-fit mapping data in both the case where
the target is also a split record and the case where the target
is a simple added record.  Before this commit, we were only doing
the update when the target was itself a split record (and even in
that case, the test was slightly wrong).
parent a42c2a8c
......@@ -947,6 +947,11 @@ find_best_matches:
src->new_file.flags |= GIT_DIFF_FLAG_VALID_OID;
num_updates++;
if (src2tgt[t].similarity > 0 && src2tgt[t].idx > t) {
/* what used to be at src t is now at src s */
tgt2src[src2tgt[t].idx].idx = (uint32_t)s;
}
}
}
......@@ -996,7 +1001,7 @@ find_best_matches:
num_rewrites--;
}
/* otherwise, if we just overwrote a source, update mapping */
else if (s > t && src2tgt[t].similarity > 0) {
else if (src2tgt[t].similarity > 0 && src2tgt[t].idx > t) {
/* what used to be at src t is now at src s */
tgt2src[src2tgt[t].idx].idx = (uint32_t)s;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment