From: Junio C Hamano <junkio@cox.net>
Date: Tue, 4 Jul 2006 09:44:48 +0000 (-0700)
Subject: git-grep: use a bit more specific error messages.
X-Git-Tag: v1.4.2-rc1~86^2
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=088b084bbbb7c076a85db941ad60edce582017b4;p=git

git-grep: use a bit more specific error messages.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---

diff --git a/builtin-grep.c b/builtin-grep.c
index bc53546dc7..6973c66704 100644
--- a/builtin-grep.c
+++ b/builtin-grep.c
@@ -657,6 +657,13 @@ static int grep_object(struct grep_opt *opt, const char **paths,
 static const char builtin_grep_usage[] =
 "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 hit = 0;
@@ -764,7 +771,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
 			case 'A': case 'B': case 'C':
 				if (!arg[2]) {
 					if (argc <= 1)
-						usage(builtin_grep_usage);
+						die(emsg_missing_context_len);
 					scan = *++argv;
 					argc--;
 				}
@@ -776,7 +783,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
 				break;
 			}
 			if (sscanf(scan, "%u", &num) != 1)
-				usage(builtin_grep_usage);
+				die(emsg_invalid_context_len, scan);
 			switch (arg[1]) {
 			case 'A':
 				opt.post_context = num;
@@ -795,7 +802,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
 			int lno = 0;
 			char buf[1024];
 			if (argc <= 1)
-				usage(builtin_grep_usage);
+				die(emsg_missing_argument, arg);
 			patterns = fopen(argv[1], "r");
 			if (!patterns)
 				die("'%s': %s", argv[1], strerror(errno));
@@ -820,7 +827,7 @@ int cmd_grep(int argc, const char **argv, char **envp)
 				argc--;
 				continue;
 			}
-			usage(builtin_grep_usage);
+			die(emsg_missing_argument, arg);
 		}
 		if (!strcmp("--", arg)) {
 			/* later processing wants to have this at argv[1] */