Browse Source

use alloc_ref rather than hand-allocating "struct ref"

This saves us some manual computation, and eliminates a call
to strcpy.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jeff King 10 years ago committed by Junio C Hamano
parent
commit
6f687c21c0
  1. 3
      builtin/fetch.c
  2. 5
      remote-curl.c

3
builtin/fetch.c

@ -639,8 +639,7 @@ static int store_updated_refs(const char *raw_url, const char *remote_name, @@ -639,8 +639,7 @@ static int store_updated_refs(const char *raw_url, const char *remote_name,
continue;

if (rm->peer_ref) {
ref = xcalloc(1, sizeof(*ref) + strlen(rm->peer_ref->name) + 1);
strcpy(ref->name, rm->peer_ref->name);
ref = alloc_ref(rm->peer_ref->name);
hashcpy(ref->old_sha1, rm->peer_ref->old_sha1);
hashcpy(ref->new_sha1, rm->old_sha1);
ref->force = rm->peer_ref->force;

5
remote-curl.c

@ -168,10 +168,7 @@ static struct ref *parse_info_refs(struct discovery *heads) @@ -168,10 +168,7 @@ static struct ref *parse_info_refs(struct discovery *heads)
url.buf);
data[i] = 0;
ref_name = mid + 1;
ref = xmalloc(sizeof(struct ref) +
strlen(ref_name) + 1);
memset(ref, 0, sizeof(struct ref));
strcpy(ref->name, ref_name);
ref = alloc_ref(ref_name);
get_sha1_hex(start, ref->old_sha1);
if (!refs)
refs = ref;

Loading…
Cancel
Save