diff options
Diffstat (limited to 'tree-diff.c')
-rw-r--r-- | tree-diff.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/tree-diff.c b/tree-diff.c index fe2e466ac1..34ee3b13b8 100644 --- a/tree-diff.c +++ b/tree-diff.c @@ -299,7 +299,8 @@ static void skip_uninteresting(struct tree_desc *t, struct strbuf *base, enum interesting match; while (t->size) { - match = tree_entry_interesting(&t->entry, base, 0, &opt->pathspec); + match = tree_entry_interesting(opt->repo->index, &t->entry, + base, 0, &opt->pathspec); if (match) { if (match == all_entries_not_interesting) t->size = 0; @@ -491,7 +492,7 @@ static struct combine_diff_path *ll_diff_tree_paths( continue; /* diff(t,pi) != ΓΈ */ - if (oidcmp(t.entry.oid, tp[i].entry.oid) || + if (!oideq(t.entry.oid, tp[i].entry.oid) || (t.entry.mode != tp[i].entry.mode)) continue; @@ -557,9 +558,7 @@ struct combine_diff_path *diff_tree_paths( * free pre-allocated last element, if any * (see path_appendnew() for details about why) */ - if (p->next) { - FREE_AND_NULL(p->next); - } + FREE_AND_NULL(p->next); return p; } @@ -607,7 +606,7 @@ static void try_to_follow_renames(const struct object_id *old_oid, choice = q->queue[0]; q->nr = 0; - diff_setup(&diff_opts); + repo_diff_setup(opt->repo, &diff_opts); diff_opts.flags.recursive = 1; diff_opts.flags.find_copies_harder = 1; diff_opts.output_format = DIFF_FORMAT_NO_OUTPUT; |