Re: [PATCH 06/21] Refactor tag name verification loop to use index 'i' instead of incrementing pointer 'tag_line'
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jun 10, 2007, 09:01 UTC
- Message-ID
- <Pine.LNX.4.64.0706100959420.4059@racer.site>
- In-Reply-To
- <200706090215.05318.johan@herland.net>
Hi,
On Sat, 9 Jun 2007, Johan Herland wrote:
Show 23 quoted lines
> 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;Do you realize that half of your diff consists of reindenting, just because you introduced this ugly construct, instead of being a good boy and put the declarations where they belong -- at the beginning of the function (or if it exists, block)?
> + /* Verify the tag-name: we don't allow control characters or spaces in it */
> + for (i = 4;;) {Yes, you can write this construct. That does not change the fact that it gives me eye cancer.
Ciao, Dscho