Commit 628e92cd by Ben Straub

Don't use weird return codes

parent c56c6d69
......@@ -293,8 +293,9 @@ static int normalize_find_opts(
if (git_config_get_string(&val, cfg, "diff.renames") < 0)
giterr_clear();
else if (val) {
if (!strcasecmp(val, "false"))
return GIT_PASSTHROUGH;
int boolval;
if (!git__parse_bool(&boolval, val) && !boolval)
opts->flags = 0;
else if (!strcasecmp(val, "copies") || !strcasecmp(val, "copy"))
opts->flags = GIT_DIFF_FIND_RENAMES | GIT_DIFF_FIND_COPIES;
else
......@@ -834,7 +835,11 @@ int git_diff_find_similar(
git_diff_file swap;
if ((error = normalize_find_opts(diff, &opts, given_opts)) < 0)
return (error == GIT_PASSTHROUGH) ? 0 : error;
return error;
/* No flags set; nothing to do */
if ((opts.flags & GIT_DIFF_FIND_ALL) == 0)
return 0;
num_deltas = diff->deltas.length;
......
......@@ -919,6 +919,7 @@ void test_diff_rename__rejected_match_can_match_others(void)
char *ptr;
opts.checkout_strategy = GIT_CHECKOUT_FORCE;
findopts.flags = GIT_DIFF_FIND_RENAMES;
cl_git_pass(git_reference_lookup(&head, g_repo, "HEAD"));
cl_git_pass(git_reference_symbolic_set_target(
......@@ -1003,6 +1004,7 @@ void test_diff_rename__rejected_match_can_match_others_two(void)
struct rename_expected expect = { 2, status, sources, targets };
opts.checkout_strategy = GIT_CHECKOUT_FORCE;
findopts.flags = GIT_DIFF_FIND_RENAMES;
cl_git_pass(git_reference_lookup(&head, g_repo, "HEAD"));
cl_git_pass(git_reference_symbolic_set_target(
......@@ -1060,6 +1062,7 @@ void test_diff_rename__rejected_match_can_match_others_three(void)
struct rename_expected expect = { 2, status, sources, targets };
opts.checkout_strategy = GIT_CHECKOUT_FORCE;
findopts.flags = GIT_DIFF_FIND_RENAMES;
cl_git_pass(git_reference_lookup(&head, g_repo, "HEAD"));
cl_git_pass(git_reference_symbolic_set_target(
......
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