Hi,
On Sat, 9 Jun 2007, Johan Herland wrote:
quoted text > - tag_len = tagger_line - tag_line - strlen("tag \n");
> - item->tag = xmalloc(tag_len + 1);
> - memcpy(item->tag, tag_line + 4, tag_len);
> - item->tag[tag_len] = '__PLACEHOLDER__0_';
> -
> - if (!strcmp(type, blob_type)) {
> - item->tagged = &lookup_blob(sha1)->object;
> - } else if (!strcmp(type, tree_type)) {
> - item->tagged = &lookup_tree(sha1)->object;
> - } else if (!strcmp(type, commit_type)) {
> - item->tagged = &lookup_commit(sha1)->object;
> - } else if (!strcmp(type, tag_type)) {
> - item->tagged = &lookup_tag(sha1)->object;
> - } else {
> - error("Unknown type %s", type);
> - item->tagged = NULL;
> - }
> -
> - if (item->tagged && track_object_refs) {
> - struct object_refs *refs = alloc_object_refs(1);
> - refs->ref[0] = item->tagged;
> - set_object_refs(&item->object, refs);
> + if (item) {
> + tag_len = tagger_line - tag_line - strlen("tag \n");
> + item->tag = xmalloc(tag_len + 1);
> + memcpy(item->tag, tag_line + 4, tag_len);
> + item->tag[tag_len] = '__PLACEHOLDER__0_';
> +
> + if (!strcmp(type, blob_type)) {
> + item->tagged = &lookup_blob(sha1)->object;
> + } else if (!strcmp(type, tree_type)) {
> + item->tagged = &lookup_tree(sha1)->object;
> + } else if (!strcmp(type, commit_type)) {
> + item->tagged = &lookup_commit(sha1)->object;
> + } else if (!strcmp(type, tag_type)) {
> + item->tagged = &lookup_tag(sha1)->object;
> + } else {
> + error("Unknown type %s", type);
> + item->tagged = NULL;
> + }
> +
> + if (item->tagged && track_object_refs) {
> + struct object_refs *refs = alloc_object_refs(1);
> + refs->ref[0] = item->tagged;
> + set_object_refs(&item->object, refs);
> + }
> }
>
> return 0;
The patch would have been so much simpler, and so much more descriptive of
what you're doing, had you just said
if (!item)
return 0;
Ciao,
Dscho
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html