@@ -765,6 +765,7 @@ static void add_pair(struct merge_options *opt,
int names_idx = is_add ? side : 0;
if (is_add) {
+ assert(match_mask == 0 || match_mask == 6);
if (strset_contains(&renames->cached_target_names[side],
pathname))
return;
@@ -772,6 +773,8 @@ static void add_pair(struct merge_options *opt,
unsigned content_relevant = (match_mask == 0);
unsigned location_relevant = (dir_rename_mask == 0x07);
+ assert(match_mask == 0 || match_mask == 3 || match_mask == 5);
+
/*
* If pathname is found in cached_irrelevant[side] due to
* previous pick but for this commit content is relevant,
@@ -3483,6 +3486,8 @@ static void process_entry(struct merge_options *opt,
*/
if (!ci->merged.clean)
strmap_put(&opt->priv->conflicted, path, ci);
+
+ /* Record metadata for ci->merged in dir_metadata */
record_entry_for_tree(dir_metadata, path, &ci->merged);
}