summaryrefslogtreecommitdiff
path: root/builtin/clone.c
diff options
context:
space:
mode:
authorMichael Haggerty <mhagger@alum.mit.edu>2014-04-07 13:47:54 (GMT)
committerJunio C Hamano <gitster@pobox.com>2014-04-07 19:09:11 (GMT)
commit697a41519b0d41c1b2c5714b5558f68814d78885 (patch)
tree3abb559b6f6bb471be1f6a466c8012848eadd66e /builtin/clone.c
parentc13291108880f9adc26a2ab5c09535869afecb22 (diff)
downloadgit-697a41519b0d41c1b2c5714b5558f68814d78885.zip
git-697a41519b0d41c1b2c5714b5558f68814d78885.tar.gz
git-697a41519b0d41c1b2c5714b5558f68814d78885.tar.bz2
parse_arg(): really test that argument is properly terminated
The old parse_arg(), when fed an argument "refs/heads/a"master parsed 'refs/heads/a' off of the front of the argument and considered itself successful. It was only when parse_next_arg() tried to parse the *next* argument that a problem was noticed. But in fact, the definition of the input format requires arguments to be terminated by SP or NUL, so *this* argument is already erroneous and parse_arg() should diagnose the problem. So teach parse_arg() to verify that C-quoted arguments are terminated correctly. If not, emit a more specific error message. There is no corresponding error case of a non-C-quoted argument that is not terminated correctly, because the end of a non-quoted argument is *by definition* a space or NUL, so there is no way to insert other junk between the "end" of the argument and the argument terminator. Adjust the tests to expect the new error message. Add a docstring to the function, incorporating the comments that were formerly within the function plus some added information. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/clone.c')
0 files changed, 0 insertions, 0 deletions