Signed-off-by: Johan Herland <johan@xxxxxxxxxxx> --- mktag.c | 29 ++++++++++++++++------------- 1 files changed, 16 insertions(+), 13 deletions(-) diff --git a/mktag.c b/mktag.c index 4dbefab..2e70504 100644 --- a/mktag.c +++ b/mktag.c @@ -81,19 +81,22 @@ static int verify_tag(char *data, unsigned long size) memcpy(type, type_line + 5, type_len); type[type_len] = '\0'; - /* Verify that the object matches */ - if (verify_object(sha1, type)) - return error("char%d: could not verify object %s", 7, sha1_to_hex(sha1)); - - /* Verify the tag-name: we don't allow control characters or spaces in it */ - tag_line += 4; - for (;;) { - unsigned char c = *tag_line++; - if (c == '\n') - break; - if (c > ' ') - continue; - return error("char" PD_FMT ": could not verify tag name", tag_line - data); + { + unsigned long i; + + /* Verify that the object matches */ + if (verify_object(sha1, type)) + return error("char%d: could not verify object %s", 7, sha1_to_hex(sha1)); + + /* Verify the tag-name: we don't allow control characters or spaces in it */ + for (i = 4;;) { + unsigned char c = tag_line[i++]; + if (c == '\n') + break; + if (c > ' ') + continue; + return error("char" PD_FMT ": could not verify tag name", tag_line + i - data); + } } /* TODO: check for committer info + blank line? */ -- 1.5.2 - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html