提交 c321f00d 编写于 作者: B Brian Gernhardt 提交者: Junio C Hamano

Keep "git --git-dir" from causing a bus error.

The option checking code for --git-dir had an off by 1 error that
would cause it to access uninitialized memory if it was the last
argument.  This causes it to display an error and display the usage
string instead.
Signed-off-by: NBrian Gernhardt <benji@silverinsanity.com>
Signed-off-by: NJunio C Hamano <junkio@cox.net>
上级 4b155223
......@@ -59,8 +59,10 @@ static int handle_options(const char*** argv, int* argc)
} else if (!strcmp(cmd, "-p") || !strcmp(cmd, "--paginate")) {
setup_pager();
} else if (!strcmp(cmd, "--git-dir")) {
if (*argc < 1)
return -1;
if (*argc < 2) {
fprintf(stderr, "No directory given for --git-dir.\n" );
usage(git_usage_string);
}
setenv("GIT_DIR", (*argv)[1], 1);
(*argv)++;
(*argc)--;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册