git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] test-subprocess: fix segfault without arguments
@ 2012-04-10 19:07 René Scharfe
  0 siblings, 0 replies; only message in thread
From: René Scharfe @ 2012-04-10 19:07 UTC (permalink / raw)
  To: git discussion list; +Cc: Junio C Hamano

Check if we even have a parameter before checking its value.  Running
this command without any arguments may not make a lot of sense, but
reacting with a segmentation fault is unduly harsh.

While we're at it, avoid casting argv by declaring it const right away.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
---
 test-subprocess.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/test-subprocess.c b/test-subprocess.c
index 8926bc5..f2d4c0d 100644
--- a/test-subprocess.c
+++ b/test-subprocess.c
@@ -1,7 +1,7 @@
 #include "cache.h"
 #include "run-command.h"
 
-int main(int argc, char **argv)
+int main(int argc, const char **argv)
 {
 	struct child_process cp;
 	int nogit = 0;
@@ -9,12 +9,12 @@ int main(int argc, char **argv)
 	setup_git_directory_gently(&nogit);
 	if (nogit)
 		die("No git repo found");
-	if (!strcmp(argv[1], "--setup-work-tree")) {
+	if (argc > 1 && !strcmp(argv[1], "--setup-work-tree")) {
 		setup_work_tree();
 		argv++;
 	}
 	memset(&cp, 0, sizeof(cp));
 	cp.git_cmd = 1;
-	cp.argv = (const char **)argv+1;
+	cp.argv = argv + 1;
 	return run_command(&cp);
 }
-- 
1.7.10

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2012-04-10 19:07 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-10 19:07 [PATCH] test-subprocess: fix segfault without arguments René Scharfe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).