From: Michael Haggerty Date: Fri, 12 Aug 2011 22:36:26 +0000 (+0200) Subject: Change the signature of read_packed_refs() X-Git-Tag: v1.7.8-rc0~108^2~4 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=db4dd93a4a3553c61b416db924520b55bfee5f7e;p=git.git Change the signature of read_packed_refs() Change it to return a (struct ref_list *) instead of writing into a cached_refs structure. (This removes the need to create a cached_refs structure in resolve_gitlink_packed_ref(), where it is otherwise unneeded.) Signed-off-by: Michael Haggerty Signed-off-by: Junio C Hamano --- diff --git a/refs.c b/refs.c index df4ce4228..10aebcc68 100644 --- a/refs.c +++ b/refs.c @@ -203,7 +203,7 @@ static void invalidate_cached_refs(void) clear_cached_refs(get_cached_refs(NULL)); } -static void read_packed_refs(FILE *f, struct cached_refs *cached_refs) +static struct ref_list *read_packed_refs(FILE *f) { struct ref_list *list = NULL; struct ref_list *last = NULL; @@ -235,7 +235,7 @@ static void read_packed_refs(FILE *f, struct cached_refs *cached_refs) !get_sha1_hex(refline + 1, sha1)) hashcpy(last->peeled, sha1); } - cached_refs->packed = sort_ref_list(list); + return sort_ref_list(list); } void add_extra_ref(const char *name, const unsigned char *sha1, int flag) @@ -264,7 +264,7 @@ static struct ref_list *get_packed_refs(const char *submodule) f = fopen(packed_refs_file, "r"); refs->packed = NULL; if (f) { - read_packed_refs(f, refs); + refs->packed = read_packed_refs(f); fclose(f); } refs->did_packed = 1; @@ -391,7 +391,7 @@ static struct ref_list *get_loose_refs(const char *submodule) static int resolve_gitlink_packed_ref(char *name, int pathlen, const char *refname, unsigned char *result) { FILE *f; - struct cached_refs refs; + struct ref_list *packed_refs; struct ref_list *ref; int retval; @@ -399,9 +399,9 @@ static int resolve_gitlink_packed_ref(char *name, int pathlen, const char *refna f = fopen(name, "r"); if (!f) return -1; - read_packed_refs(f, &refs); + packed_refs = read_packed_refs(f); fclose(f); - ref = refs.packed; + ref = packed_refs; retval = -1; while (ref) { if (!strcmp(ref->name, refname)) { @@ -411,7 +411,7 @@ static int resolve_gitlink_packed_ref(char *name, int pathlen, const char *refna } ref = ref->next; } - free_ref_list(refs.packed); + free_ref_list(packed_refs); return retval; }