mirror of
https://github.com/git/git.git
synced 2025-12-12 20:36:24 +01:00
diff.h: drop diff_tree_oid() & friends' return value
ll_diff_tree_oid() has only ever returned 0 [1], so it's return value
is basically useless. It's only caller diff_tree_oid() has only ever
returned the return value of ll_diff_tree_oid() as-is [2], so its
return value is just as useless. Most of diff_tree_oid()'s callers
simply ignore its return value, except:
- diff_root_tree_oid() is a thin wrapper around diff_tree_oid() and
returns with its return value, but all of diff_root_tree_oid()'s
callers ignore its return value.
- rev_compare_tree() and rev_same_tree_as_empty() do look at the
return value in a condition, but, since the return value is always
0, the former's < 0 condition is never fulfilled, while the
latter's >= 0 condition is always fulfilled.
So let's drop the return value of ll_diff_tree_oid(), diff_tree_oid()
and diff_root_tree_oid(), and drop those conditions from
rev_compare_tree() and rev_same_tree_as_empty() as well.
[1] ll_diff_tree_oid() and its ancestors have been returning only 0
ever since it was introduced as diff_tree() in 9174026cfe (Add
"diff-tree" program to show which files have changed between two
trees., 2005-04-09).
[2] diff_tree_oid() traces back to diff-tree.c:main() in 9174026cfe as
well.
Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
1df15f8dee
commit
0ee3cb888d
4
diff.h
4
diff.h
@@ -431,10 +431,10 @@ struct combine_diff_path *diff_tree_paths(
|
||||
struct combine_diff_path *p, const struct object_id *oid,
|
||||
const struct object_id **parents_oid, int nparent,
|
||||
struct strbuf *base, struct diff_options *opt);
|
||||
int diff_tree_oid(const struct object_id *old_oid,
|
||||
void diff_tree_oid(const struct object_id *old_oid,
|
||||
const struct object_id *new_oid,
|
||||
const char *base, struct diff_options *opt);
|
||||
int diff_root_tree_oid(const struct object_id *new_oid, const char *base,
|
||||
void diff_root_tree_oid(const struct object_id *new_oid, const char *base,
|
||||
struct diff_options *opt);
|
||||
|
||||
struct combine_diff_path {
|
||||
|
||||
@@ -791,9 +791,7 @@ static int rev_compare_tree(struct rev_info *revs,
|
||||
|
||||
tree_difference = REV_TREE_SAME;
|
||||
revs->pruning.flags.has_changes = 0;
|
||||
if (diff_tree_oid(&t1->object.oid, &t2->object.oid, "",
|
||||
&revs->pruning) < 0)
|
||||
return REV_TREE_DIFFERENT;
|
||||
diff_tree_oid(&t1->object.oid, &t2->object.oid, "", &revs->pruning);
|
||||
|
||||
if (!nth_parent)
|
||||
if (bloom_ret == 1 && tree_difference == REV_TREE_SAME)
|
||||
@@ -804,7 +802,6 @@ static int rev_compare_tree(struct rev_info *revs,
|
||||
|
||||
static int rev_same_tree_as_empty(struct rev_info *revs, struct commit *commit)
|
||||
{
|
||||
int retval;
|
||||
struct tree *t1 = get_commit_tree(commit);
|
||||
|
||||
if (!t1)
|
||||
@@ -812,9 +809,9 @@ static int rev_same_tree_as_empty(struct rev_info *revs, struct commit *commit)
|
||||
|
||||
tree_difference = REV_TREE_SAME;
|
||||
revs->pruning.flags.has_changes = 0;
|
||||
retval = diff_tree_oid(NULL, &t1->object.oid, "", &revs->pruning);
|
||||
diff_tree_oid(NULL, &t1->object.oid, "", &revs->pruning);
|
||||
|
||||
return retval >= 0 && (tree_difference == REV_TREE_SAME);
|
||||
return tree_difference == REV_TREE_SAME;
|
||||
}
|
||||
|
||||
struct treesame_state {
|
||||
|
||||
18
tree-diff.c
18
tree-diff.c
@@ -29,7 +29,7 @@ static struct combine_diff_path *ll_diff_tree_paths(
|
||||
struct combine_diff_path *p, const struct object_id *oid,
|
||||
const struct object_id **parents_oid, int nparent,
|
||||
struct strbuf *base, struct diff_options *opt);
|
||||
static int ll_diff_tree_oid(const struct object_id *old_oid,
|
||||
static void ll_diff_tree_oid(const struct object_id *old_oid,
|
||||
const struct object_id *new_oid,
|
||||
struct strbuf *base, struct diff_options *opt);
|
||||
|
||||
@@ -679,7 +679,7 @@ static void try_to_follow_renames(const struct object_id *old_oid,
|
||||
q->nr = 1;
|
||||
}
|
||||
|
||||
static int ll_diff_tree_oid(const struct object_id *old_oid,
|
||||
static void ll_diff_tree_oid(const struct object_id *old_oid,
|
||||
const struct object_id *new_oid,
|
||||
struct strbuf *base, struct diff_options *opt)
|
||||
{
|
||||
@@ -697,29 +697,27 @@ static int ll_diff_tree_oid(const struct object_id *old_oid,
|
||||
}
|
||||
|
||||
opt->pathchange = pathchange_old;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int diff_tree_oid(const struct object_id *old_oid,
|
||||
void diff_tree_oid(const struct object_id *old_oid,
|
||||
const struct object_id *new_oid,
|
||||
const char *base_str, struct diff_options *opt)
|
||||
{
|
||||
struct strbuf base;
|
||||
int retval;
|
||||
|
||||
strbuf_init(&base, PATH_MAX);
|
||||
strbuf_addstr(&base, base_str);
|
||||
|
||||
retval = ll_diff_tree_oid(old_oid, new_oid, &base, opt);
|
||||
ll_diff_tree_oid(old_oid, new_oid, &base, opt);
|
||||
if (!*base_str && opt->flags.follow_renames && diff_might_be_rename())
|
||||
try_to_follow_renames(old_oid, new_oid, &base, opt);
|
||||
|
||||
strbuf_release(&base);
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
int diff_root_tree_oid(const struct object_id *new_oid, const char *base, struct diff_options *opt)
|
||||
void diff_root_tree_oid(const struct object_id *new_oid,
|
||||
const char *base,
|
||||
struct diff_options *opt)
|
||||
{
|
||||
return diff_tree_oid(NULL, new_oid, base, opt);
|
||||
diff_tree_oid(NULL, new_oid, base, opt);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user