From: Jeff King Date: Mon, 28 Jun 2010 08:59:07 +0000 (-0400) Subject: notes: check number of parameters to "git notes copy" X-Git-Tag: v1.7.1.1~9 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=bbb1b8a35a06203020f7ab6d1ad58bcb4afe8e93;p=git.git notes: check number of parameters to "git notes copy" Otherwise we may segfault with too few parameters. Signed-off-by: Jeff King Tested-by: Bert Wesarg Signed-off-by: Junio C Hamano --- diff --git a/builtin/notes.c b/builtin/notes.c index da504ee0a..f678f9cb5 100644 --- a/builtin/notes.c +++ b/builtin/notes.c @@ -614,6 +614,10 @@ static int copy(int argc, const char **argv, const char *prefix) } } + if (argc < 2) { + error("too few parameters"); + usage_with_options(git_notes_copy_usage, options); + } if (2 < argc) { error("too many parameters"); usage_with_options(git_notes_copy_usage, options); diff --git a/t/t3301-notes.sh b/t/t3301-notes.sh index 64f32ad94..2d67a40fc 100755 --- a/t/t3301-notes.sh +++ b/t/t3301-notes.sh @@ -1044,4 +1044,10 @@ test_expect_success 'GIT_NOTES_REWRITE_REF overrides config' ' git log -1 > output && test_cmp expect output ' + +test_expect_success 'git notes copy diagnoses too many or too few parameters' ' + test_must_fail git notes copy && + test_must_fail git notes copy one two three +' + test_done