X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=help.c;h=9da97d7462040d3935e7eaa95b1167357b38a943;hb=347d04d0e2a0f5813a80eed7ce2b38debaf5ce00;hp=e8db31f60f010887ccb3a943344da566e0937403;hpb=5e2f779cbf60997809130fde213736e1ea4f6f33;p=git.git diff --git a/help.c b/help.c index e8db31f60..9da97d746 100644 --- a/help.c +++ b/help.c @@ -297,6 +297,9 @@ static void add_cmd_list(struct cmdnames *cmds, struct cmdnames *old) old->names = NULL; } +/* An empirically derived magic number */ +#define SIMILAR_ENOUGH(x) ((x) < 6) + const char *help_unknown_cmd(const char *cmd) { int i, n, best_similarity = 0; @@ -331,7 +334,7 @@ const char *help_unknown_cmd(const char *cmd) n = 1; while (n < main_cmds.cnt && best_similarity == main_cmds.names[n]->len) ++n; - if (autocorrect && n == 1) { + if (autocorrect && n == 1 && SIMILAR_ENOUGH(best_similarity)) { const char *assumed = main_cmds.names[0]->name; main_cmds.names[0] = NULL; clean_cmdnames(&main_cmds); @@ -349,7 +352,7 @@ const char *help_unknown_cmd(const char *cmd) fprintf(stderr, "git: '%s' is not a git-command. See 'git --help'.\n", cmd); - if (best_similarity < 6) { + if (SIMILAR_ENOUGH(best_similarity)) { fprintf(stderr, "\nDid you mean %s?\n", n < 2 ? "this": "one of these");