git-grep: use a bit more specific error messages.
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
fcfe34b5ac
commit
088b084bbb
@ -657,6 +657,13 @@ static int grep_object(struct grep_opt *opt, const char **paths,
|
|||||||
static const char builtin_grep_usage[] =
|
static const char builtin_grep_usage[] =
|
||||||
"git-grep <option>* <rev>* [-e] <pattern> [<path>...]";
|
"git-grep <option>* <rev>* [-e] <pattern> [<path>...]";
|
||||||
|
|
||||||
|
static const char emsg_invalid_context_len[] =
|
||||||
|
"%s: invalid context length argument";
|
||||||
|
static const char emsg_missing_context_len[] =
|
||||||
|
"missing context length argument";
|
||||||
|
static const char emsg_missing_argument[] =
|
||||||
|
"option requires an argument -%s";
|
||||||
|
|
||||||
int cmd_grep(int argc, const char **argv, char **envp)
|
int cmd_grep(int argc, const char **argv, char **envp)
|
||||||
{
|
{
|
||||||
int hit = 0;
|
int hit = 0;
|
||||||
@ -764,7 +771,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
|
|||||||
case 'A': case 'B': case 'C':
|
case 'A': case 'B': case 'C':
|
||||||
if (!arg[2]) {
|
if (!arg[2]) {
|
||||||
if (argc <= 1)
|
if (argc <= 1)
|
||||||
usage(builtin_grep_usage);
|
die(emsg_missing_context_len);
|
||||||
scan = *++argv;
|
scan = *++argv;
|
||||||
argc--;
|
argc--;
|
||||||
}
|
}
|
||||||
@ -776,7 +783,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (sscanf(scan, "%u", &num) != 1)
|
if (sscanf(scan, "%u", &num) != 1)
|
||||||
usage(builtin_grep_usage);
|
die(emsg_invalid_context_len, scan);
|
||||||
switch (arg[1]) {
|
switch (arg[1]) {
|
||||||
case 'A':
|
case 'A':
|
||||||
opt.post_context = num;
|
opt.post_context = num;
|
||||||
@ -795,7 +802,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
|
|||||||
int lno = 0;
|
int lno = 0;
|
||||||
char buf[1024];
|
char buf[1024];
|
||||||
if (argc <= 1)
|
if (argc <= 1)
|
||||||
usage(builtin_grep_usage);
|
die(emsg_missing_argument, arg);
|
||||||
patterns = fopen(argv[1], "r");
|
patterns = fopen(argv[1], "r");
|
||||||
if (!patterns)
|
if (!patterns)
|
||||||
die("'%s': %s", argv[1], strerror(errno));
|
die("'%s': %s", argv[1], strerror(errno));
|
||||||
@ -820,7 +827,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
|
|||||||
argc--;
|
argc--;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
usage(builtin_grep_usage);
|
die(emsg_missing_argument, arg);
|
||||||
}
|
}
|
||||||
if (!strcmp("--", arg)) {
|
if (!strcmp("--", arg)) {
|
||||||
/* later processing wants to have this at argv[1] */
|
/* later processing wants to have this at argv[1] */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user