From: Jeff King Date: Tue, 14 Feb 2017 06:08:09 GMT Subject: [PATCH 7/7] grep: do not diagnose misspelt revs with --no-index Message-ID: <20170214060809.pgqaxt6rylnsy6d7@sigill.intra.peff.net> In-Reply-To: <20170214060021.einv7372exbxa23z@sigill.intra.peff.net> If we are using --no-index, then our arguments cannot be revs in the first place. Not only is it pointless to diagnose them, but if we are not in a repository, we should not be trying to resolve any names. Signed-off-by: Jeff King --- builtin/grep.c | 2 +- t/t7810-grep.sh | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/builtin/grep.c b/builtin/grep.c index c4c632594..1454bef49 100644 --- a/builtin/grep.c +++ b/builtin/grep.c @@ -1201,7 +1201,7 @@ int cmd_grep(int argc, const char **argv, const char *prefix) if (!seen_dashdash) { int j; for (j = i; j < argc; j++) - verify_filename(prefix, argv[j], j == i); + verify_filename(prefix, argv[j], j == i && use_index); } parse_pathspec(&pathspec, 0, diff --git a/t/t7810-grep.sh b/t/t7810-grep.sh index c051c7ee8..0ff9f6cae 100755 --- a/t/t7810-grep.sh +++ b/t/t7810-grep.sh @@ -1043,6 +1043,11 @@ test_expect_success 'grep --no-index prefers paths to revs' ' test_cmp expect actual ' +test_expect_success 'grep --no-index does not "diagnose" revs' ' + test_must_fail git grep --no-index o :1:hello.c 2>err && + test_i18ngrep ! -i "did you mean" err +' + cat >expected <